F      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(c) Galois, Inc. 2007BSD3Don Stewart <dons@galois.com> provisional(Basic embedding of SQL types in Haskell.None  35CN.Data type representing the SQL DROP statement.Delete a databaseDelete a table named SQLTable$Data type for SQL CREATE statements.Create a databaseCreate a table$Data type for SQL INSERT statements. $Data type for SQL DELETE statements. $Data type for SQL UPDATE statements.Expressions in SQL statements.Use empty string for no alias.Join with another table.$Data type for SQL SELECT statements.!DDISTINCT, ALL etc. | result, alias. Empty list means "select all".#FROM$WHERE%GROUP BY&ORDER BY' TOP n, etc.( UNION, etc=EMySQL slanted, but also SQLite friendly if you don't get too fancy..FWe parameterize over column type, since SQL engines do tend to provide their own set of supported datatypes (which may or may not map onto SQL99's set of types.)kAuto-increment?Pretty prints a Pretty prints a  Pretty prints a  Pretty prints a .Pretty prints a .Pretty prints a   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwx  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvw{qpro)*+ (!"#$%&'v   hijklmndefg^_`abcWXYZ[\]STUVLMQNOPNOPRFGHIJK=>?@ABCDE789:;<123456,-./0stuw=   (!"#$%&')*+,-./0123456789:;<=>?@ABCDEFGHIJKL MQNOPNOPRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwNone  35CNxy  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxxx(c) Galois, Inc. 2007BSD3Don Stewart <dons@galois.com> provisionalportableNone  35CN SQLite types A BLOB handleThe context in which an SQL function executes is stored in an sqlite3_context object. A pointer to an sqlite3_context object is always first parameter to application-defined SQL functions.SQLite uses the sqlite3_value object to represent all values that are or can be stored in a database table. SQLite uses dynamic typing for the values it stores. Values stored in sqlite3_value objects can be be integers, floating point values, strings, BLOBs, or NULL.An instance of this object represent single SQL statements. This object is variously known as a "prepared statement" or a "compiled SQL statement" or simply as a "statement".An open SQLite database object.SQLite C status codes. (http://www.sqlite.org/c3ref/c_abort.htmlSQLite extended result codes: 0http://www.sqlite.org/c3ref/c_ioerr_blocked.html!SQLite flags for open operations. .http://www.sqlite.org/c3ref/c_open_create.htmlDevice characteristics /http://www.sqlite.org/c3ref/c_iocap_atomic.htmlFile locking levels 1http://www.sqlite.org/c3ref/c_lock_exclusive.htmlSynchronization flags 0http://www.sqlite.org/c3ref/c_sync_dataonly.htmlxAccess methods 0http://www.sqlite.org/c3ref/c_access_exists.htmlAuthorizer Action Codes .http://www.sqlite.org/c3ref/c_alter_table.htmlText encodings &http://www.sqlite.org/c3ref/c_any.html Fundamental datatypes 'http://www.sqlite.org/c3ref/c_blob.htmlyz{|}~     yz{|}~     ~}|{z   y  yz{|}~     (c) Galois, Inc. 2007BSD3Don Stewart <dons@galois.com> provisional#Bindings to the SQLite C interface.None  35CN~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~~~}|{zyxwvutsrqponmlkjihgfedcba`_^]\[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! ~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(c) Galois, Inc. 2007BSD3docserver-dev-team@galois.com provisionalportableNone  +35CN2This is the type of the function supported by the  function. The first argument is the regular expression to match with and the second argument is the string to match. The result shall be  for successful match and  otherwise.<Open a new database connection, whose name is given by the dbName( argument. A sqlite3 handle is returned.;An exception is thrown if the database could not be opened.FOpen a new database connection read-only, whose name is given by the dbName( argument. A sqlite3 handle is returned.PAn exception is thrown if the database does not exist, or could not be opened.Close a database connection. Destroys the SQLite value associated with a database, closes all open files relating to the database, and releases all resources.#Define a new table, populated from tab in the database.Insert a row into the table tab.YReturn the rowid (as an Integer) of the most recent successful INSERT into the database.FSets the value of a parameter in a statement. Performs UTF8 encoding..Called when we know that an error has occured.MPrepare and execute a parameterized statment, ignoring the result. See also .jPrepare and execute a parameterized statment. Statement parameter names start with a colon (for example, :col_id). Note that for the moment, column names should not contain 0 characters because that part of the column name will be ignored.(Evaluate the SQL statement specified by sqlStmtReturns an error, or  if everything was OK.This function registers a A to be called when REGEXP(regexp,str) is used in an SQL query.xInternal function to marshall the C types into Haskell types to make a RegexpHandler compatible with the Sqlite3 API.f       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~![           !!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGGHIJKLLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     sqlit_E2K624DNB1NK0m9KvtlV9oDatabase.SQL.Types Database.SQLDatabase.SQLite.TypesDatabase.SQLite.BaseDatabase.SQLite PrettySQLpp_sqlSQLDrop SQLDropDB SQLDropTable SQLCreate SQLCreateDBSQLCreateTable SQLInsertSQLInsertQuery SQLDelete SQLUpdateSQLExpr ColumnSQLExpr BinSQLExpr PrefixSQLExprPostfixSQLExpr FunSQLExpr ConstSQLExpr CaseSQLExpr ListSQLExpr TableSourceSrcTable SrcSelectJoin SelectSourceFrom SQLSelectoptionsattrstablescriteriagroupbyorderbyextraSQLBinSQLOrderSQLAscSQLDescBlobTypeTinyBlob NormalBlob MediumBlobLongBlob DateTimeTypeDATEDATETIME TIMESTAMPTIMEYEARIntTypeTINYSMALLMEDIUMNORMALBIGSQLType SQLBooleanSQLChar SQLVarCharSQLBlob SQLDateTimeSQLInt SQLDecimalSQLFloatColumncolNamecolType colClausesSQLTableTabletabName tabColumnstabConstraints VirtualTabletabUsing ConstraintTablePrimaryKey TableUnique TableCheck Deferment DeferrableDeferrableInitiallyDeferredDeferrableInitiallyImmediate NotDeferrableNotDeferrableInitiallyDeferredNotDeferrableInitiallyImmediateForeignUpdateActionSetNull SetDefaultCascadeRestrictNoActionForeignUpdateConditionOnDeleteOnUpdateMatchClause IsNullable DefaultValue PrimaryKey ForeignKey ClusteredUniqueOpName ColumnName TableName DatabaseNameshowType showClause toSQLString select_all export_sql sqlInsertFundamentalDatatypeTextEncodeFlagAuthCode AccessFlagSyncFlagLockFlagIOCap OpenFlagsStatus SQLiteType SQLiteInt SQLiteFloat SQLiteText SQLiteBlob SQLiteNullSQLiteCallbackUserDataSQLiteCallbackSQLiteContextBuffer SQLiteUTF16 SQLiteBLOB SQLiteContext SQLiteValue SQLiteStmtSQLite SQLiteWord64 SQLiteInt64 sQLITE_OK sQLITE_ERRORsQLITE_INTERNAL sQLITE_PERM sQLITE_ABORT sQLITE_BUSY sQLITE_LOCKED sQLITE_NOMEMsQLITE_READONLYsQLITE_INTERRUPT sQLITE_IOERRsQLITE_CORRUPTsQLITE_NOTFOUND sQLITE_FULLsQLITE_CANTOPENsQLITE_PROTOCOL sQLITE_EMPTY sQLITE_SCHEMA sQLITE_TOOBIGsQLITE_CONSTRAINTsQLITE_MISMATCH sQLITE_MISUSE sQLITE_NOLFS sQLITE_AUTH sQLITE_FORMAT sQLITE_RANGE sQLITE_NOTADB sQLITE_ROW sQLITE_DONEsQLITE_IOERR_READsQLITE_IOERR_SHORT_READsQLITE_IOERR_WRITEsQLITE_IOERR_FSYNCsQLITE_IOERR_DIR_FSYNCsQLITE_IOERR_TRUNCATEsQLITE_IOERR_FSTATsQLITE_IOERR_UNLOCKsQLITE_IOERR_RDLOCKsQLITE_IOERR_DELETEsQLITE_IOERR_BLOCKEDsQLITE_IOERR_NOMEMsQLITE_OPEN_READONLYsQLITE_OPEN_READWRITEsQLITE_OPEN_CREATEsQLITE_OPEN_DELETEONCLOSEsQLITE_OPEN_EXCLUSIVEsQLITE_OPEN_MAIN_DBsQLITE_OPEN_TEMP_DBsQLITE_OPEN_TRANSIENT_DBsQLITE_OPEN_MAIN_JOURNALsQLITE_OPEN_TEMP_JOURNALsQLITE_OPEN_SUBJOURNALsQLITE_OPEN_MASTER_JOURNALsQLITE_IOCAP_ATOMICsQLITE_IOCAP_ATOMIC512sQLITE_IOCAP_ATOMIC1KsQLITE_IOCAP_ATOMIC2KsQLITE_IOCAP_ATOMIC4KsQLITE_IOCAP_ATOMIC8KsQLITE_IOCAP_ATOMIC16KsQLITE_IOCAP_ATOMIC32KsQLITE_IOCAP_ATOMIC64KsQLITE_IOCAP_SAFE_APPENDsQLITE_IOCAP_SEQUENTIALsQLITE_LOCK_NONEsQLITE_LOCK_SHAREDsQLITE_LOCK_RESERVEDsQLITE_LOCK_PENDINGsQLITE_LOCK_EXCLUSIVEsQLITE_SYNC_NORMALsQLITE_SYNC_FULLsQLITE_SYNC_DATAONLYsQLITE_ACCESS_EXISTSsQLITE_ACCESS_READWRITEsQLITE_ACCESS_READ sQLITE_COPYsQLITE_CREATE_INDEXsQLITE_CREATE_TABLEsQLITE_CREATE_TEMP_INDEXsQLITE_CREATE_TEMP_TABLEsQLITE_CREATE_TEMP_TRIGGERsQLITE_CREATE_TEMP_VIEWsQLITE_CREATE_TRIGGERsQLITE_CREATE_VIEW sQLITE_DELETEsQLITE_DROP_INDEXsQLITE_DROP_TABLEsQLITE_DROP_TEMP_INDEXsQLITE_DROP_TEMP_TABLEsQLITE_DROP_TEMP_TRIGGERsQLITE_DROP_TEMP_VIEWsQLITE_DROP_TRIGGERsQLITE_DROP_VIEW sQLITE_INSERT sQLITE_PRAGMA sQLITE_READ sQLITE_SELECTsQLITE_TRANSACTION sQLITE_UPDATE sQLITE_ATTACH sQLITE_DETACHsQLITE_ALTER_TABLEsQLITE_REINDEXsQLITE_ANALYZEsQLITE_CREATE_VTABLEsQLITE_DROP_VTABLEsQLITE_FUNCTION sQLITE_UTF8sQLITE_UTF16LEsQLITE_UTF16BE sQLITE_UTF16 sQLITE_ANYsQLITE_UTF16_ALIGNEDsQLITE_INTEGER sQLITE_FLOAT sQLITE_BLOB sQLITE_NULL sQLITE_TEXT isNullStmt noCallback freeCallback$fEnumSQLiteTypeCollationHandler16CollationHandlerCompareHandler StepHandlerFinalizeContextHandler FilterHandler UpdateHook FreeHandler ExecHandlersqlite3_blob_writesqlite3_blob_readsqlite3_blob_bytessqlite3_blob_closesqlite3_blob_opensqlite3_enable_shared_cachesqlite3_update_hooksqlite3_rollback_hooksqlite3_commit_hooksqlite3_db_handlesqlite3_get_autocommitsqlite3_get_temp_directorysqlite3_set_temp_directory sqlite3_sleepsqlite3_collation_needed16sqlite3_collation_neededsqlite3_create_collation_v2sqlite3_create_collation16sqlite3_create_collationsqlite3_result_zeroblobsqlite3_result_valuesqlite3_result_text16besqlite3_result_text16lesqlite3_result_text16sqlite3_result_textsqlite3_result_nullsqlite3_result_int64sqlite3_result_intsqlite3_result_error_toobigsqlite3_result_error16sqlite3_result_errorsqlite3_result_doublesqlite3_result_blobsqlite3_transient_destructorsqlite3_static_destructorsqlite3_set_auxdatasqlite3_get_auxdatasqlite3_user_datasqlite3_aggregate_contextsqlite3_value_typesqlite3_value_numeric_typesqlite3_value_text16besqlite3_value_text16lesqlite3_value_text16sqlite3_value_textsqlite3_value_int64sqlite3_value_intsqlite3_value_doublesqlite3_value_bytes16sqlite3_value_bytessqlite3_value_blobsqlite3_create_functionsqlite3_finalizesqlite3_column_valuesqlite3_column_typesqlite3_column_text16sqlite3_column_textsqlite3_column_int64sqlite3_column_intsqlite3_column_doublesqlite3_column_bytes16sqlite3_column_bytessqlite3_column_blobsqlite3_data_count sqlite3_stepsqlite3_column_decltypesqlite3_column_namesqlite3_column_countsqlite3_clear_bindingssqlite3_bind_parameter_indexsqlite3_bind_parameter_namesqlite3_bind_parameter_countsqlite3_bind_zeroblobsqlite3_bind_valuesqlite3_bind_textsqlite3_bind_nullsqlite3_bind_int64sqlite3_bind_intsqlite3_bind_doublesqlite3_bind_blobsqlite3_preparesqlite3_errmsgsqlite3_errcodesqlite3_open_v2sqlite3_open16 sqlite3_opensqlite3_progress_handlersqlite3_profile sqlite3_tracesqlite3_set_authorizer sqlite3_freesqlite3_reallocsqlite3_mallocsqlite3_free_tablesqlite3_get_tablesqlite3_busy_timeoutsqlite3_busy_handlersqlite3_complete16sqlite3_completesqlite3_interruptsqlite3_total_changessqlite3_changessqlite3_last_insert_rowidsqlite3_extended_result_codes sqlite3_exec sqlite3_closesqlite3_libversion_numbersqlite3_libversionmkCollationHandler16mkCollationHandlermkCompareHandler mkStepHandlermkFinalizeContextHandlermkFilterHandler mkUpdateHook mkFreeHandler mkExecHandlerIsValuefromSQLiteValuereturnSQLiteValueIsFunctionHandler funcArity funcHandler RegexpHandler SQLiteResultValueDoubleIntTextBlobNullRow SQLiteHandlenewSQLiteHandleopenConnectionopenReadonlyConnectioncloseConnectionwithPrimdefineTableOpt defineTable insertRow getLastRowIDexecParamStatement_execParamStatement execStatementexecStatement_addRegexpSupportcreateFunctioncreateFunctionPrimcreateAggregatePrimppSelectppUpdateppDeleteppCreateppDrop ppSQLExprppAttrsppSelectSourceppJoin ppJoinArg ppTableSourceppAliasppWhere ppGroupBy ppOrderByppInsertppColumnppClause ppConstraintcommaHcommaV$fPrettySQLSQLType$fPrettySQLSQLDrop$fPrettySQLSQLCreate$fPrettySQLSQLInsert$fPrettySQLSQLDelete$fPrettySQLSQLUpdate$fPrettySQLSQLSelectghc-prim GHC.TypesTrueFalse bindValueto_errorbaseGHC.BaseNothingregexp_callbackFunctionHandler FunctionNameArityget_sqlite_valSQLiteResultPrivatememcpyp_freefreemallocaddSQLiteHandleFinalizertupledebindeReturnensureensure_ get_text_valget_valsqlite3_value_valueisNullCStringLensqlite3_value_cstringlencheckedFromIntegralencodeCStringLen decodeCStringmallocUtf8CStringLenpeekUtf8CStringpeekUtf8CStringLenwithUtf8CStringwithUtf8CStringLenfunction_callbackfinalize_callbackget_aggr_contextset_aggr_context_SZ step_callback$fIsValueMaybe $fIsValue()$fIsValueByteString $fIsValue[] $fIsValue(,) $fIsValueInt $fIsValueCInt$fIsValueInt64$fIsValueDouble$fIsValueValue$fIsValueSQLiteValue$fIsFunctionHandler(->)$fIsFunctionHandler(->)0$fIsFunctionHandler(->)1$fIsFunctionHandler(->)2$fIsFunctionHandler(->)3$fIsFunctionHandler(->)4$fIsFunctionHandlerIO$fIsFunctionHandler(->)5$fIsFunctionHandler(->)6$fIsFunctionHandler(->)7$fIsFunctionHandler(->)8$fIsFunctionHandler(->)9$fIsFunctionHandler(->)10$fIsFunctionHandlerr$fSQLiteResultValue$fSQLiteResultPrivateValue$fSQLiteResult()$fSQLiteResultPrivate()$fSQLiteResult[]$fSQLiteResultPrivate[]