gitextract__428ffi_/ ├── .clang-format ├── .github/ │ └── stale.yml ├── .gitignore ├── .gitmodules ├── .swift-version ├── CHANGELOG.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE.md ├── LICENSE ├── Package.swift ├── README.md ├── VERSION ├── WCDB.cpp.podspec ├── WCDB.objc.podspec ├── WCDB.podspec ├── WCDB.swift.podspec ├── deprecated/ │ └── android/ │ ├── .gitignore │ ├── Android.mk │ ├── Application.mk │ ├── addons/ │ │ ├── backup/ │ │ │ ├── mm_backup.c │ │ │ ├── mm_backup.h │ │ │ └── mm_recover.c │ │ ├── fts/ │ │ │ ├── fts3_tokenizer.h │ │ │ ├── mm_cipher.c │ │ │ ├── mm_fts.h │ │ │ ├── mm_sqliteext.c │ │ │ ├── mm_tokenizer.c │ │ │ └── mm_utils.c │ │ ├── icucompat/ │ │ │ ├── icucompat.c │ │ │ ├── icucompat.h │ │ │ ├── icuprototype.h │ │ │ └── unicode/ │ │ │ ├── alphaindex.h │ │ │ ├── appendable.h │ │ │ ├── basictz.h │ │ │ ├── bms.h │ │ │ ├── bmsearch.h │ │ │ ├── brkiter.h │ │ │ ├── bytestream.h │ │ │ ├── bytestrie.h │ │ │ ├── bytestriebuilder.h │ │ │ ├── calendar.h │ │ │ ├── caniter.h │ │ │ ├── chariter.h │ │ │ ├── choicfmt.h │ │ │ ├── coleitr.h │ │ │ ├── coll.h │ │ │ ├── colldata.h │ │ │ ├── curramt.h │ │ │ ├── currpinf.h │ │ │ ├── currunit.h │ │ │ ├── datefmt.h │ │ │ ├── dbbi.h │ │ │ ├── dcfmtsym.h │ │ │ ├── decimfmt.h │ │ │ ├── docmain.h │ │ │ ├── dtfmtsym.h │ │ │ ├── dtintrv.h │ │ │ ├── dtitvfmt.h │ │ │ ├── dtitvinf.h │ │ │ ├── dtptngen.h │ │ │ ├── dtrule.h │ │ │ ├── enumset.h │ │ │ ├── errorcode.h │ │ │ ├── fieldpos.h │ │ │ ├── fmtable.h │ │ │ ├── format.h │ │ │ ├── fpositer.h │ │ │ ├── gender.h │ │ │ ├── gregocal.h │ │ │ ├── icudataver.h │ │ │ ├── icuplug.h │ │ │ ├── idna.h │ │ │ ├── listformatter.h │ │ │ ├── localpointer.h │ │ │ ├── locdspnm.h │ │ │ ├── locid.h │ │ │ ├── measfmt.h │ │ │ ├── measunit.h │ │ │ ├── measure.h │ │ │ ├── messagepattern.h │ │ │ ├── msgfmt.h │ │ │ ├── normalizer2.h │ │ │ ├── normlzr.h │ │ │ ├── numfmt.h │ │ │ ├── numsys.h │ │ │ ├── parseerr.h │ │ │ ├── parsepos.h │ │ │ ├── platform.h │ │ │ ├── plurfmt.h │ │ │ ├── plurrule.h │ │ │ ├── ptypes.h │ │ │ ├── putil.h │ │ │ ├── rbbi.h │ │ │ ├── rbnf.h │ │ │ ├── rbtz.h │ │ │ ├── regex.h │ │ │ ├── rep.h │ │ │ ├── resbund.h │ │ │ ├── schriter.h │ │ │ ├── search.h │ │ │ ├── selfmt.h │ │ │ ├── simpletz.h │ │ │ ├── smpdtfmt.h │ │ │ ├── sortkey.h │ │ │ ├── std_string.h │ │ │ ├── strenum.h │ │ │ ├── stringpiece.h │ │ │ ├── stringtriebuilder.h │ │ │ ├── stsearch.h │ │ │ ├── symtable.h │ │ │ ├── tblcoll.h │ │ │ ├── timezone.h │ │ │ ├── tmunit.h │ │ │ ├── tmutamt.h │ │ │ ├── tmutfmt.h │ │ │ ├── translit.h │ │ │ ├── tzfmt.h │ │ │ ├── tznames.h │ │ │ ├── tzrule.h │ │ │ ├── tztrans.h │ │ │ ├── ubidi.h │ │ │ ├── ubrk.h │ │ │ ├── ucal.h │ │ │ ├── ucasemap.h │ │ │ ├── ucat.h │ │ │ ├── uchar.h │ │ │ ├── ucharstrie.h │ │ │ ├── ucharstriebuilder.h │ │ │ ├── uchriter.h │ │ │ ├── uclean.h │ │ │ ├── ucnv.h │ │ │ ├── ucnv_cb.h │ │ │ ├── ucnv_err.h │ │ │ ├── ucnvsel.h │ │ │ ├── ucol.h │ │ │ ├── ucoleitr.h │ │ │ ├── uconfig.h │ │ │ ├── ucsdet.h │ │ │ ├── ucurr.h │ │ │ ├── udat.h │ │ │ ├── udata.h │ │ │ ├── udateintervalformat.h │ │ │ ├── udatpg.h │ │ │ ├── udisplaycontext.h │ │ │ ├── uenum.h │ │ │ ├── ugender.h │ │ │ ├── uidna.h │ │ │ ├── uiter.h │ │ │ ├── uldnames.h │ │ │ ├── uloc.h │ │ │ ├── ulocdata.h │ │ │ ├── umachine.h │ │ │ ├── umisc.h │ │ │ ├── umsg.h │ │ │ ├── unifilt.h │ │ │ ├── unifunct.h │ │ │ ├── unimatch.h │ │ │ ├── unirepl.h │ │ │ ├── uniset.h │ │ │ ├── unistr.h │ │ │ ├── unorm.h │ │ │ ├── unorm2.h │ │ │ ├── unum.h │ │ │ ├── uobject.h │ │ │ ├── upluralrules.h │ │ │ ├── uregex.h │ │ │ ├── urename.h │ │ │ ├── urep.h │ │ │ ├── ures.h │ │ │ ├── uscript.h │ │ │ ├── usearch.h │ │ │ ├── uset.h │ │ │ ├── usetiter.h │ │ │ ├── ushape.h │ │ │ ├── uspoof.h │ │ │ ├── usprep.h │ │ │ ├── ustring.h │ │ │ ├── ustringtrie.h │ │ │ ├── utext.h │ │ │ ├── utf.h │ │ │ ├── utf16.h │ │ │ ├── utf32.h │ │ │ ├── utf8.h │ │ │ ├── utf_old.h │ │ │ ├── utmscale.h │ │ │ ├── utrace.h │ │ │ ├── utrans.h │ │ │ ├── utypes.h │ │ │ ├── uvernum.h │ │ │ ├── uversion.h │ │ │ └── vtzone.h │ │ ├── repair/ │ │ │ ├── SQLiteRepairKit.h │ │ │ ├── sqliterk.c │ │ │ ├── sqliterk.h │ │ │ ├── sqliterk_api.c │ │ │ ├── sqliterk_btree.c │ │ │ ├── sqliterk_output.cpp │ │ │ ├── sqliterk_pager.c │ │ │ ├── sqliterk_pager.h │ │ │ └── sqliterk_values.c │ │ └── vfslog/ │ │ ├── vfslog.c │ │ └── vfslog.h │ ├── build.gradle │ ├── gradle/ │ │ ├── WeChatArmeabiCompat.gradle │ │ ├── WeChatNativeDepend.gradle │ │ ├── WeChatPublish.gradle │ │ ├── doclava-1.0.6.jar │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ ├── jni/ │ │ ├── ChunkedCursorWindow.cpp │ │ ├── ChunkedCursorWindow.h │ │ ├── CursorWindow.cpp │ │ ├── CursorWindow.h │ │ ├── Errors.h │ │ ├── JNIHelp.cpp │ │ ├── JNIHelp.h │ │ ├── Logger.c │ │ ├── Logger.h │ │ ├── ModuleLoader.c │ │ ├── ModuleLoader.h │ │ ├── Mutex.h │ │ ├── SQLiteCommon.cpp │ │ ├── SQLiteCommon.h │ │ ├── Unicode.cpp │ │ ├── Unicode.h │ │ ├── com_tencent_wcdb_CursorWindow.cpp │ │ ├── com_tencent_wcdb_FileUtils.cpp │ │ ├── com_tencent_wcdb_database_ChunkedCursorWindow.cpp │ │ ├── com_tencent_wcdb_database_SQLiteConnection.cpp │ │ ├── com_tencent_wcdb_database_SQLiteDebug.cpp │ │ ├── com_tencent_wcdb_database_SQLiteDirectQuery.cpp │ │ ├── com_tencent_wcdb_database_SQLiteGlobal.cpp │ │ ├── com_tencent_wcdb_extension_fts_MMFtsTokenizer.cpp │ │ ├── com_tencent_wcdb_repair_Backup.cpp │ │ ├── com_tencent_wcdb_repair_DBDumpUtil.cpp │ │ ├── com_tencent_wcdb_repair_RepairKit.cpp │ │ └── com_tencent_wcdb_support_Log.cpp │ ├── room/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src/ │ │ └── main/ │ │ ├── AndroidManifest.xml │ │ └── java/ │ │ └── com/ │ │ └── tencent/ │ │ └── wcdb/ │ │ └── room/ │ │ └── db/ │ │ ├── WCDBDatabase.java │ │ ├── WCDBOpenHelper.java │ │ ├── WCDBOpenHelperFactory.java │ │ ├── WCDBProgram.java │ │ └── WCDBStatement.java │ ├── samples/ │ │ ├── benchmark/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ ├── src/ │ │ │ │ ├── androidTest/ │ │ │ │ │ └── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── tencent/ │ │ │ │ │ └── wcdb/ │ │ │ │ │ └── benchmark/ │ │ │ │ │ ├── concurrent/ │ │ │ │ │ │ ├── ConcurrentTest.java │ │ │ │ │ │ ├── FrameworkConcurrentTest.java │ │ │ │ │ │ ├── FrameworkWalConcurrentTest.java │ │ │ │ │ │ ├── SQLCipherConcurrentTest.java │ │ │ │ │ │ ├── SQLCipherEncryptedConcurrentTest.java │ │ │ │ │ │ ├── WCDBConcurrentTest.java │ │ │ │ │ │ ├── WCDBEncryptedConcurrentTest.java │ │ │ │ │ │ ├── WCDBWalConcurrentTest.java │ │ │ │ │ │ └── WCDBWalEncryptedConcurrentTest.java │ │ │ │ │ └── single/ │ │ │ │ │ ├── FrameworkSingleThreadedTest.java │ │ │ │ │ ├── FrameworkWalSingleThreadedTest.java │ │ │ │ │ ├── SQLCipherEncryptedSingleThreadedTest.java │ │ │ │ │ ├── SQLCipherSingleThreadedTest.java │ │ │ │ │ ├── SingleThreadedTest.java │ │ │ │ │ ├── WCDBEncryptedSingleThreadedTest.java │ │ │ │ │ ├── WCDBSingleThreadedTest.java │ │ │ │ │ ├── WCDBWalAsyncCpSingleThreadedTest.java │ │ │ │ │ ├── WCDBWalEncryptedAsyncCpSingleThreadedTest.java │ │ │ │ │ ├── WCDBWalEncryptedSingleThreadedTest.java │ │ │ │ │ └── WCDBWalSingleThreadedTest.java │ │ │ │ └── main/ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ └── res/ │ │ │ │ └── values/ │ │ │ │ └── strings.xml │ │ │ └── summary.awk │ │ ├── sample-encryptdb/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src/ │ │ │ ├── androidTest/ │ │ │ │ └── java/ │ │ │ │ └── com/ │ │ │ │ └── tencent/ │ │ │ │ └── wcdb/ │ │ │ │ └── sample/ │ │ │ │ └── encryptdb/ │ │ │ │ └── ExampleInstrumentedTest.java │ │ │ ├── main/ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── tencent/ │ │ │ │ │ └── wcdb/ │ │ │ │ │ └── sample/ │ │ │ │ │ └── encryptdb/ │ │ │ │ │ ├── EncryptedDBHelper.java │ │ │ │ │ ├── MainActivity.java │ │ │ │ │ └── PlainTextDBHelper.java │ │ │ │ └── res/ │ │ │ │ ├── layout/ │ │ │ │ │ ├── activity_main.xml │ │ │ │ │ └── main_listitem.xml │ │ │ │ ├── menu/ │ │ │ │ │ └── menu_main.xml │ │ │ │ └── values/ │ │ │ │ ├── colors.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── tencent/ │ │ │ └── wcdb/ │ │ │ └── sample/ │ │ │ └── encryptdb/ │ │ │ └── ExampleUnitTest.java │ │ ├── sample-persistence/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src/ │ │ │ ├── androidTest/ │ │ │ │ └── java/ │ │ │ │ └── com/ │ │ │ │ └── example/ │ │ │ │ └── wcdb/ │ │ │ │ └── sample/ │ │ │ │ └── persistence/ │ │ │ │ └── ExampleInstrumentedTest.java │ │ │ ├── main/ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── example/ │ │ │ │ │ └── wcdb/ │ │ │ │ │ └── sample/ │ │ │ │ │ └── persistence/ │ │ │ │ │ ├── MainActivity.java │ │ │ │ │ └── entity/ │ │ │ │ │ ├── AppDatabase.java │ │ │ │ │ ├── User.java │ │ │ │ │ └── UserDao.java │ │ │ │ └── res/ │ │ │ │ ├── layout/ │ │ │ │ │ └── activity_main.xml │ │ │ │ └── values/ │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── wcdb/ │ │ │ └── sample/ │ │ │ └── persistence/ │ │ │ └── ExampleUnitTest.java │ │ ├── sample-repairdb/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src/ │ │ │ ├── androidTest/ │ │ │ │ └── java/ │ │ │ │ └── com/ │ │ │ │ └── tencent/ │ │ │ │ └── wcdb/ │ │ │ │ └── sample/ │ │ │ │ └── repairdb/ │ │ │ │ └── ExampleInstrumentedTest.java │ │ │ ├── main/ │ │ │ │ ├── AndroidManifest.xml │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── tencent/ │ │ │ │ │ └── wcdb/ │ │ │ │ │ └── sample/ │ │ │ │ │ └── repairdb/ │ │ │ │ │ ├── DBHelper.java │ │ │ │ │ └── MainActivity.java │ │ │ │ └── res/ │ │ │ │ ├── layout/ │ │ │ │ │ ├── activity_main.xml │ │ │ │ │ └── main_listitem.xml │ │ │ │ └── values/ │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── test/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── tencent/ │ │ │ └── wcdb/ │ │ │ └── sample/ │ │ │ └── repairdb/ │ │ │ └── ExampleUnitTest.java │ │ └── sample-room-with-a-view/ │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── android/ │ │ │ └── roomwordssample/ │ │ │ ├── LiveDataTestUtil.java │ │ │ └── WordDaoTest.java │ │ └── main/ │ │ ├── AndroidManifest.xml │ │ ├── java/ │ │ │ └── com/ │ │ │ └── example/ │ │ │ └── android/ │ │ │ └── roomwordssample/ │ │ │ ├── MainActivity.java │ │ │ ├── NewWordActivity.java │ │ │ ├── Word.java │ │ │ ├── WordDao.java │ │ │ ├── WordListAdapter.java │ │ │ ├── WordRepository.java │ │ │ ├── WordRoomDatabase.java │ │ │ └── WordViewModel.java │ │ └── res/ │ │ ├── drawable/ │ │ │ ├── ic_add_black_24dp.xml │ │ │ └── ic_launcher_background.xml │ │ ├── layout/ │ │ │ ├── activity_main.xml │ │ │ ├── activity_new_word.xml │ │ │ ├── content_main.xml │ │ │ └── recyclerview_item.xml │ │ ├── mipmap-anydpi-v26/ │ │ │ ├── ic_launcher.xml │ │ │ └── ic_launcher_round.xml │ │ └── values/ │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ └── styles.xml │ ├── settings.gradle │ ├── sqlcipher/ │ │ ├── sqlcipher.h │ │ ├── sqlite3.c │ │ ├── sqlite3.h │ │ ├── sqlite3ext.h │ │ └── sqlite3session.h │ └── wcdb/ │ ├── .gitignore │ ├── AndroidManifest.xml │ ├── build.gradle │ ├── proguard-rules.pro │ └── src/ │ └── com/ │ └── tencent/ │ └── wcdb/ │ ├── AbstractCursor.java │ ├── AbstractWindowedCursor.java │ ├── BulkCursorDescriptor.java │ ├── BulkCursorNative.java │ ├── BulkCursorToCursorAdaptor.java │ ├── CrossProcessCursor.java │ ├── CrossProcessCursorWrapper.java │ ├── Cursor.java │ ├── CursorIndexOutOfBoundsException.java │ ├── CursorJoiner.java │ ├── CursorToBulkCursorAdaptor.java │ ├── CursorWindow.aidl │ ├── CursorWindow.java │ ├── CursorWindowAllocationException.java │ ├── CursorWrapper.java │ ├── DatabaseErrorHandler.java │ ├── DatabaseUtils.java │ ├── DefaultDatabaseErrorHandler.java │ ├── FileUtils.java │ ├── IBulkCursor.java │ ├── IContentObserver.aidl │ ├── MatrixCursor.java │ ├── MergeCursor.java │ ├── Observable.java │ ├── SQLException.java │ ├── StaleDataException.java │ ├── database/ │ │ ├── ChunkedCursorWindow.java │ │ ├── DatabaseObjectNotClosedException.java │ │ ├── SQLiteAbortException.java │ │ ├── SQLiteAccessPermException.java │ │ ├── SQLiteAsyncCheckpointer.java │ │ ├── SQLiteAsyncCursor.java │ │ ├── SQLiteAsyncQuery.java │ │ ├── SQLiteBindOrColumnIndexOutOfRangeException.java │ │ ├── SQLiteBlobTooBigException.java │ │ ├── SQLiteCantOpenDatabaseException.java │ │ ├── SQLiteChangeListener.java │ │ ├── SQLiteCheckpointListener.java │ │ ├── SQLiteCipherSpec.java │ │ ├── SQLiteClosable.java │ │ ├── SQLiteConnection.java │ │ ├── SQLiteConnectionPool.java │ │ ├── SQLiteConstraintException.java │ │ ├── SQLiteCursor.java │ │ ├── SQLiteCursorDriver.java │ │ ├── SQLiteCustomFunction.java │ │ ├── SQLiteDatabase.java │ │ ├── SQLiteDatabaseConfiguration.java │ │ ├── SQLiteDatabaseCorruptException.java │ │ ├── SQLiteDatabaseLockedException.java │ │ ├── SQLiteDatatypeMismatchException.java │ │ ├── SQLiteDebug.java │ │ ├── SQLiteDirectCursor.java │ │ ├── SQLiteDirectCursorDriver.java │ │ ├── SQLiteDirectQuery.java │ │ ├── SQLiteDiskIOException.java │ │ ├── SQLiteDoneException.java │ │ ├── SQLiteException.java │ │ ├── SQLiteFullException.java │ │ ├── SQLiteGlobal.java │ │ ├── SQLiteMisuseException.java │ │ ├── SQLiteOpenHelper.java │ │ ├── SQLiteOutOfMemoryException.java │ │ ├── SQLiteProgram.java │ │ ├── SQLiteQuery.java │ │ ├── SQLiteQueryBuilder.java │ │ ├── SQLiteReadOnlyDatabaseException.java │ │ ├── SQLiteSession.java │ │ ├── SQLiteStatement.java │ │ ├── SQLiteStatementInfo.java │ │ ├── SQLiteTableLockedException.java │ │ └── SQLiteTrace.java │ ├── extension/ │ │ ├── SQLiteExtension.java │ │ └── fts/ │ │ └── MMFtsTokenizer.java │ ├── repair/ │ │ ├── BackupKit.java │ │ ├── DBDumpUtil.java │ │ ├── RecoverKit.java │ │ └── RepairKit.java │ └── support/ │ ├── CancellationSignal.java │ ├── Context.java │ ├── ICancellationSignal.aidl │ ├── Log.java │ ├── LogPrinter.java │ ├── LruCache.java │ ├── OperationCanceledException.java │ └── PrefixPrinter.java ├── src/ │ ├── CMakeLists.txt │ ├── WCDB.h │ ├── WCDB.xcodeproj/ │ │ ├── project.pbxproj │ │ └── xcshareddata/ │ │ ├── IDETemplateMacros.plist │ │ ├── xcbaselines/ │ │ │ └── 23FC43C521B6631200FA1A0F.xcbaseline/ │ │ │ ├── 977CB5EE-2755-4C27-9E15-11B0C28E0E28.plist │ │ │ ├── C3BF6D2F-DC2A-49AB-B150-DE139BD363B3.plist │ │ │ ├── F4C9EB05-986B-414D-A7A7-E320B90A0C7D.plist │ │ │ └── Info.plist │ │ └── xcschemes/ │ │ ├── BenchmarkTest.xcscheme │ │ ├── CppTests.xcscheme │ │ ├── Host.xcscheme │ │ ├── ObjcTests.xcscheme │ │ ├── SwiftBridgeObjcTest.xcscheme │ │ ├── SwiftTests.xcscheme │ │ ├── WCDB.xcscheme │ │ ├── WCDBCpp.xcscheme │ │ ├── WCDBObjc.xcscheme │ │ └── WCDBSwift.xcscheme │ ├── bridge/ │ │ ├── WCDBBridging.h │ │ ├── base/ │ │ │ ├── ContainerBridge.cpp │ │ │ ├── ContainerBridge.h │ │ │ ├── ErrorBridge.cpp │ │ │ ├── ErrorBridge.h │ │ │ ├── ObjectBridge.cpp │ │ │ ├── ObjectBridge.h │ │ │ └── ObjectBridge.hpp │ │ ├── cppbridge/ │ │ │ ├── BindingBridge.cpp │ │ │ ├── BindingBridge.h │ │ │ ├── CoreBridge.cpp │ │ │ ├── CoreBridge.h │ │ │ ├── DatabaseBridge.cpp │ │ │ ├── DatabaseBridge.h │ │ │ ├── FTSBridge.cpp │ │ │ ├── FTSBridge.h │ │ │ ├── HandleBridge.cpp │ │ │ ├── HandleBridge.h │ │ │ ├── HandleStatementBridge.cpp │ │ │ └── HandleStatementBridge.h │ │ ├── module.modulemap │ │ ├── objcbridge/ │ │ │ ├── WCTAPIBridge.h │ │ │ ├── WCTAPIBridge.mm │ │ │ └── WCTBridgeMacro.h │ │ ├── tests/ │ │ │ ├── common/ │ │ │ │ ├── Assert.swift │ │ │ │ ├── BaseTestCase.swift │ │ │ │ ├── Convenience.swift │ │ │ │ └── SwiftBridgeObjcTest-Bridging-Header.h │ │ │ └── crud/ │ │ │ ├── AdvanceCRUDTests.swift │ │ │ ├── AutoAddColumnObject.h │ │ │ ├── AutoAddColumnObject.mm │ │ │ ├── AutoAddColumnTests.swift │ │ │ ├── CRUDObject.h │ │ │ ├── CRUDObject.mm │ │ │ ├── CRUDObject.swift │ │ │ ├── CRUDTestCase.swift │ │ │ ├── DatabaseTestCase.swift │ │ │ ├── DeleteInterfaceTests.swift │ │ │ ├── DeleteTests.swift │ │ │ ├── InsertInterfaceTests.swift │ │ │ ├── InsertTests.swift │ │ │ ├── MultiSelectTests.swift │ │ │ ├── RowSelectTests.swift │ │ │ ├── SelectInterfaceTests.swift │ │ │ ├── SelectTests.swift │ │ │ ├── UpdateInterfaceTests.swift │ │ │ └── UpdateTests.swift │ │ └── winqbridge/ │ │ ├── WinqBridge.cpp │ │ ├── WinqBridge.h │ │ ├── WinqBridge.hpp │ │ ├── identifier/ │ │ │ ├── BindParameterBridge.cpp │ │ │ ├── BindParameterBridge.h │ │ │ ├── ColumnBridge.cpp │ │ │ ├── ColumnBridge.h │ │ │ ├── ColumnConstraintBridge.cpp │ │ │ ├── ColumnConstraintBridge.h │ │ │ ├── ColumnDefBridge.cpp │ │ │ ├── ColumnDefBridge.h │ │ │ ├── CommonTableExpressionBridge.cpp │ │ │ ├── CommonTableExpressionBridge.h │ │ │ ├── ExpressionBridge.cpp │ │ │ ├── ExpressionBridge.h │ │ │ ├── ExpressionOperatableBridge.cpp │ │ │ ├── ExpressionOperatableBridge.h │ │ │ ├── ForeignKeyBridge.cpp │ │ │ ├── ForeignKeyBridge.h │ │ │ ├── FrameSpecBridge.cpp │ │ │ ├── FrameSpecBridge.h │ │ │ ├── IndexedColumnBridge.cpp │ │ │ ├── IndexedColumnBridge.h │ │ │ ├── JoinBridge.cpp │ │ │ ├── JoinBridge.h │ │ │ ├── LiteralValueBridge.cpp │ │ │ ├── LiteralValueBridge.h │ │ │ ├── OrderingTermBridge.cpp │ │ │ ├── OrderingTermBridge.h │ │ │ ├── PragmaBridge.cpp │ │ │ ├── PragmaBridge.h │ │ │ ├── QualifiedTableBridge.cpp │ │ │ ├── QualifiedTableBridge.h │ │ │ ├── RaiseFunctionBridge.cpp │ │ │ ├── RaiseFunctionBridge.h │ │ │ ├── ResultColumnBridge.cpp │ │ │ ├── ResultColumnBridge.h │ │ │ ├── SchemaBridge.cpp │ │ │ ├── SchemaBridge.h │ │ │ ├── TableConstraintBridge.cpp │ │ │ ├── TableConstraintBridge.h │ │ │ ├── TableOrSubqueryBridge.cpp │ │ │ ├── TableOrSubqueryBridge.h │ │ │ ├── UpsertBridge.cpp │ │ │ ├── UpsertBridge.h │ │ │ ├── WindowDefBridge.cpp │ │ │ └── WindowDefBridge.h │ │ └── statement/ │ │ ├── StatementAlterTableBridge.cpp │ │ ├── StatementAlterTableBridge.h │ │ ├── StatementAnalyzeBridge.cpp │ │ ├── StatementAnalyzeBridge.h │ │ ├── StatementAttachBridge.cpp │ │ ├── StatementAttachBridge.h │ │ ├── StatementBeginBridge.cpp │ │ ├── StatementBeginBridge.h │ │ ├── StatementCommitBridge.cpp │ │ ├── StatementCommitBridge.h │ │ ├── StatementCreateIndexBridge.cpp │ │ ├── StatementCreateIndexBridge.h │ │ ├── StatementCreateTableBridge.cpp │ │ ├── StatementCreateTableBridge.h │ │ ├── StatementCreateTriggerBridge.cpp │ │ ├── StatementCreateTriggerBridge.h │ │ ├── StatementCreateViewBridge.cpp │ │ ├── StatementCreateViewBridge.h │ │ ├── StatementCreateVirtualTableBridge.cpp │ │ ├── StatementCreateVirtualTableBridge.h │ │ ├── StatementDeleteBridge.cpp │ │ ├── StatementDeleteBridge.h │ │ ├── StatementDetachBridge.cpp │ │ ├── StatementDetachBridge.h │ │ ├── StatementDropIndexBridge.cpp │ │ ├── StatementDropIndexBridge.h │ │ ├── StatementDropTableBridge.cpp │ │ ├── StatementDropTableBridge.h │ │ ├── StatementDropTriggerBridge.cpp │ │ ├── StatementDropTriggerBridge.h │ │ ├── StatementDropViewBridge.cpp │ │ ├── StatementDropViewBridge.h │ │ ├── StatementExplainBridge.cpp │ │ ├── StatementExplainBridge.h │ │ ├── StatementInsertBridge.cpp │ │ ├── StatementInsertBridge.h │ │ ├── StatementPragmaBridge.cpp │ │ ├── StatementPragmaBridge.h │ │ ├── StatementReindexBridge.cpp │ │ ├── StatementReindexBridge.h │ │ ├── StatementReleaseBridge.cpp │ │ ├── StatementReleaseBridge.h │ │ ├── StatementRollbackBridge.cpp │ │ ├── StatementRollbackBridge.h │ │ ├── StatementSavepointBridge.cpp │ │ ├── StatementSavepointBridge.h │ │ ├── StatementSelectBridge.cpp │ │ ├── StatementSelectBridge.h │ │ ├── StatementUpdateBridge.cpp │ │ ├── StatementUpdateBridge.h │ │ ├── StatementVacuumBridge.cpp │ │ └── StatementVacuumBridge.h │ ├── common/ │ │ ├── base/ │ │ │ ├── Assertion.hpp │ │ │ ├── ClassDecorator.hpp │ │ │ ├── Console.cpp │ │ │ ├── Console.hpp │ │ │ ├── DBOperationNotifier.cpp │ │ │ ├── DBOperationNotifier.hpp │ │ │ ├── Data.cpp │ │ │ ├── Data.hpp │ │ │ ├── ErrorProne.cpp │ │ │ ├── ErrorProne.hpp │ │ │ ├── FileHandle.cpp │ │ │ ├── FileHandle.hpp │ │ │ ├── FileManager.cpp │ │ │ ├── FileManager.hpp │ │ │ ├── FunctionContainer.cpp │ │ │ ├── FunctionContainer.hpp │ │ │ ├── HighWater.cpp │ │ │ ├── HighWater.hpp │ │ │ ├── LRUCache.hpp │ │ │ ├── Lock.cpp │ │ │ ├── Lock.hpp │ │ │ ├── MappedData.cpp │ │ │ ├── MappedData.hpp │ │ │ ├── MemberPointer.hpp │ │ │ ├── Notifier.cpp │ │ │ ├── Notifier.hpp │ │ │ ├── Path.cpp │ │ │ ├── Path.hpp │ │ │ ├── Progress.cpp │ │ │ ├── Progress.hpp │ │ │ ├── Range.cpp │ │ │ ├── Range.hpp │ │ │ ├── Recyclable.cpp │ │ │ ├── Recyclable.hpp │ │ │ ├── SQLite.h │ │ │ ├── SQLiteDeclaration.h │ │ │ ├── Serialization.cpp │ │ │ ├── Serialization.hpp │ │ │ ├── SharedThreadedErrorProne.cpp │ │ │ ├── SharedThreadedErrorProne.hpp │ │ │ ├── StringView.cpp │ │ │ ├── StringView.hpp │ │ │ ├── Thread.cpp │ │ │ ├── Thread.hpp │ │ │ ├── ThreadLocal.hpp │ │ │ ├── ThreadedErrors.cpp │ │ │ ├── ThreadedErrors.hpp │ │ │ ├── Time.cpp │ │ │ ├── Time.hpp │ │ │ ├── UnsafeData.cpp │ │ │ ├── UnsafeData.hpp │ │ │ ├── WCDBError.cpp │ │ │ ├── WCDBError.hpp │ │ │ ├── WCDBOptional.cpp │ │ │ └── WCDBOptional.hpp │ │ ├── core/ │ │ │ ├── CommonCore.cpp │ │ │ ├── CommonCore.h │ │ │ ├── CommonCore.hpp │ │ │ ├── CoreConst.cpp │ │ │ ├── CoreConst.h │ │ │ ├── DatabasePool.cpp │ │ │ ├── DatabasePool.hpp │ │ │ ├── HandleCounter.cpp │ │ │ ├── HandleCounter.hpp │ │ │ ├── HandlePool.cpp │ │ │ ├── HandlePool.hpp │ │ │ ├── InnerDatabase.cpp │ │ │ ├── InnerDatabase.hpp │ │ │ ├── InnerHandle.cpp │ │ │ ├── InnerHandle.hpp │ │ │ ├── RecyclableHandle.cpp │ │ │ ├── RecyclableHandle.hpp │ │ │ ├── Tag.cpp │ │ │ ├── Tag.hpp │ │ │ ├── assemble/ │ │ │ │ ├── AssembleHandleOperator.cpp │ │ │ │ └── AssembleHandleOperator.hpp │ │ │ ├── cipher/ │ │ │ │ ├── CipherHandle.cpp │ │ │ │ └── CipherHandle.hpp │ │ │ ├── compression/ │ │ │ │ ├── AutoCompressConfig.cpp │ │ │ │ ├── AutoCompressConfig.hpp │ │ │ │ ├── CompressHandleOperator.cpp │ │ │ │ ├── CompressHandleOperator.hpp │ │ │ │ ├── CompressingHandleDecorator.cpp │ │ │ │ ├── CompressingHandleDecorator.hpp │ │ │ │ ├── CompressingStatementDecorator.cpp │ │ │ │ ├── CompressingStatementDecorator.hpp │ │ │ │ ├── Compression.cpp │ │ │ │ ├── Compression.hpp │ │ │ │ ├── CompressionCenter.cpp │ │ │ │ ├── CompressionCenter.hpp │ │ │ │ ├── CompressionConst.cpp │ │ │ │ ├── CompressionConst.hpp │ │ │ │ ├── CompressionInfo.cpp │ │ │ │ ├── CompressionInfo.hpp │ │ │ │ ├── CompressionRecord.cpp │ │ │ │ ├── CompressionRecord.hpp │ │ │ │ ├── DecompressFunction.cpp │ │ │ │ ├── DecompressFunction.hpp │ │ │ │ ├── ZSTDContext.cpp │ │ │ │ ├── ZSTDContext.hpp │ │ │ │ ├── ZSTDDict.cpp │ │ │ │ └── ZSTDDict.hpp │ │ │ ├── config/ │ │ │ │ ├── AutoBackupConfig.cpp │ │ │ │ ├── AutoBackupConfig.hpp │ │ │ │ ├── AutoCheckpointConfig.cpp │ │ │ │ ├── AutoCheckpointConfig.hpp │ │ │ │ ├── AutoVacuumConfig.cpp │ │ │ │ ├── AutoVacuumConfig.hpp │ │ │ │ ├── BasicConfig.cpp │ │ │ │ ├── BasicConfig.hpp │ │ │ │ ├── BusyRetryConfig.cpp │ │ │ │ ├── BusyRetryConfig.hpp │ │ │ │ ├── CipherConfig.cpp │ │ │ │ ├── CipherConfig.hpp │ │ │ │ ├── Config.cpp │ │ │ │ ├── Config.hpp │ │ │ │ ├── Configs.cpp │ │ │ │ ├── Configs.hpp │ │ │ │ ├── CustomConfig.cpp │ │ │ │ ├── CustomConfig.hpp │ │ │ │ ├── PerformanceTraceConfig.cpp │ │ │ │ ├── PerformanceTraceConfig.hpp │ │ │ │ ├── SQLTraceConfig.cpp │ │ │ │ └── SQLTraceConfig.hpp │ │ │ ├── fts/ │ │ │ │ ├── AutoMergeFTSIndexConfig.cpp │ │ │ │ ├── AutoMergeFTSIndexConfig.hpp │ │ │ │ ├── FTSConst.h │ │ │ │ ├── FTSError.cpp │ │ │ │ ├── FTSError.hpp │ │ │ │ ├── MergeFTSIndexLogic.cpp │ │ │ │ ├── MergeFTSIndexLogic.hpp │ │ │ │ ├── auxfunction/ │ │ │ │ │ ├── AuxiliaryFunctionConfig.cpp │ │ │ │ │ ├── AuxiliaryFunctionConfig.hpp │ │ │ │ │ ├── AuxiliaryFunctionModule.cpp │ │ │ │ │ ├── AuxiliaryFunctionModule.hpp │ │ │ │ │ ├── FTS5AuxiliaryFunctionTemplate.hpp │ │ │ │ │ ├── SubstringMatchInfo.cpp │ │ │ │ │ └── SubstringMatchInfo.hpp │ │ │ │ └── tokenizer/ │ │ │ │ ├── AndroidUnicodeDefine.h │ │ │ │ ├── AndroidUnicodeFunctions.h │ │ │ │ ├── BaseTokenizerUtil.cpp │ │ │ │ ├── BaseTokenizerUtil.hpp │ │ │ │ ├── MMICUTokenizer.cpp │ │ │ │ ├── MMICUTokenizer.hpp │ │ │ │ ├── OneOrBinaryTokenizer.cpp │ │ │ │ ├── OneOrBinaryTokenizer.hpp │ │ │ │ ├── PinyinTokenizer.cpp │ │ │ │ ├── PinyinTokenizer.hpp │ │ │ │ ├── PorterStemming.c │ │ │ │ ├── SQLiteFTS3Tokenizer.h │ │ │ │ ├── TokenizerConfig.cpp │ │ │ │ ├── TokenizerConfig.hpp │ │ │ │ ├── TokenizerModule.cpp │ │ │ │ ├── TokenizerModule.hpp │ │ │ │ ├── TokenizerModuleTemplate.hpp │ │ │ │ ├── TokenizerModules.cpp │ │ │ │ └── TokenizerModules.hpp │ │ │ ├── function/ │ │ │ │ ├── FunctionModules.hpp │ │ │ │ └── scalar/ │ │ │ │ ├── ScalarFunctionConfig.cpp │ │ │ │ ├── ScalarFunctionConfig.hpp │ │ │ │ ├── ScalarFunctionModule.cpp │ │ │ │ ├── ScalarFunctionModule.hpp │ │ │ │ └── ScalarFunctionTemplate.hpp │ │ │ ├── integrity/ │ │ │ │ ├── IntegerityHandleOperator.cpp │ │ │ │ └── IntegerityHandleOperator.hpp │ │ │ ├── migration/ │ │ │ │ ├── AutoMigrateConfig.cpp │ │ │ │ ├── AutoMigrateConfig.hpp │ │ │ │ ├── MigrateHandleOperator.cpp │ │ │ │ ├── MigrateHandleOperator.hpp │ │ │ │ ├── MigratingHandleDecorator.cpp │ │ │ │ ├── MigratingHandleDecorator.hpp │ │ │ │ ├── MigratingStatementDecorator.cpp │ │ │ │ ├── MigratingStatementDecorator.hpp │ │ │ │ ├── Migration.cpp │ │ │ │ ├── Migration.hpp │ │ │ │ ├── MigrationInfo.cpp │ │ │ │ └── MigrationInfo.hpp │ │ │ ├── operate/ │ │ │ │ ├── OperationQueue.cpp │ │ │ │ ├── OperationQueue.hpp │ │ │ │ ├── OperationQueueForMemory.cpp │ │ │ │ └── OperationQueueForMemory.hpp │ │ │ ├── sqlite/ │ │ │ │ ├── AbstractHandle.cpp │ │ │ │ ├── AbstractHandle.hpp │ │ │ │ ├── ColumnMeta.cpp │ │ │ │ ├── ColumnMeta.hpp │ │ │ │ ├── DecorativeHandle.cpp │ │ │ │ ├── DecorativeHandle.hpp │ │ │ │ ├── DecorativeHandleStatement.cpp │ │ │ │ ├── DecorativeHandleStatement.hpp │ │ │ │ ├── Global.cpp │ │ │ │ ├── Global.hpp │ │ │ │ ├── HandleNotification.cpp │ │ │ │ ├── HandleNotification.hpp │ │ │ │ ├── HandleOperator.cpp │ │ │ │ ├── HandleOperator.hpp │ │ │ │ ├── HandleRelated.cpp │ │ │ │ ├── HandleRelated.hpp │ │ │ │ ├── HandleStatement.cpp │ │ │ │ ├── HandleStatement.hpp │ │ │ │ ├── TableAttribute.cpp │ │ │ │ └── TableAttribute.hpp │ │ │ └── vacuum/ │ │ │ ├── VacuumHandleOperator.cpp │ │ │ └── VacuumHandleOperator.hpp │ │ ├── platform/ │ │ │ ├── CrossPlatform.c │ │ │ ├── CrossPlatform.h │ │ │ ├── SysTypes.h │ │ │ ├── WCTFileManager.cpp │ │ │ └── WCTOperationQueue.cpp │ │ ├── repair/ │ │ │ ├── Info.plist │ │ │ ├── RepairKit.h │ │ │ ├── SQLiteRepairKit.modulemap │ │ │ ├── basic/ │ │ │ │ ├── Assemble.cpp │ │ │ │ ├── Assemble.hpp │ │ │ │ ├── Cipher.cpp │ │ │ │ ├── Cipher.hpp │ │ │ │ ├── Crawlable.cpp │ │ │ │ ├── Crawlable.hpp │ │ │ │ ├── EncryptedSerialization.cpp │ │ │ │ ├── EncryptedSerialization.hpp │ │ │ │ ├── MasterItem.cpp │ │ │ │ ├── MasterItem.hpp │ │ │ │ ├── Repairman.cpp │ │ │ │ ├── Repairman.hpp │ │ │ │ ├── Scoreable.cpp │ │ │ │ ├── Scoreable.hpp │ │ │ │ ├── SequenceItem.cpp │ │ │ │ ├── SequenceItem.hpp │ │ │ │ ├── UpgradeableErrorProne.cpp │ │ │ │ ├── UpgradeableErrorProne.hpp │ │ │ │ ├── Vacuum.cpp │ │ │ │ └── Vacuum.hpp │ │ │ ├── crawl/ │ │ │ │ ├── FullCrawler.cpp │ │ │ │ ├── FullCrawler.hpp │ │ │ │ ├── MasterCrawler.cpp │ │ │ │ ├── MasterCrawler.hpp │ │ │ │ ├── SequenceCrawler.cpp │ │ │ │ └── SequenceCrawler.hpp │ │ │ ├── factory/ │ │ │ │ ├── Factory.cpp │ │ │ │ ├── Factory.hpp │ │ │ │ ├── FactoryBackup.cpp │ │ │ │ ├── FactoryBackup.hpp │ │ │ │ ├── FactoryDepositor.cpp │ │ │ │ ├── FactoryDepositor.hpp │ │ │ │ ├── FactoryRelated.cpp │ │ │ │ ├── FactoryRelated.hpp │ │ │ │ ├── FactoryRenewer.cpp │ │ │ │ ├── FactoryRenewer.hpp │ │ │ │ ├── FactoryRetriever.cpp │ │ │ │ ├── FactoryRetriever.hpp │ │ │ │ ├── FactoryVacuum.cpp │ │ │ │ └── FactoryVacuum.hpp │ │ │ ├── mechanic/ │ │ │ │ ├── Backup.cpp │ │ │ │ ├── Backup.hpp │ │ │ │ ├── BackupHandleOperator.cpp │ │ │ │ ├── BackupHandleOperator.hpp │ │ │ │ ├── IncrementalMaterial.cpp │ │ │ │ ├── IncrementalMaterial.hpp │ │ │ │ ├── Material.cpp │ │ │ │ ├── Material.hpp │ │ │ │ ├── Mechanic.cpp │ │ │ │ └── Mechanic.hpp │ │ │ ├── parse/ │ │ │ │ ├── Cell.cpp │ │ │ │ ├── Cell.hpp │ │ │ │ ├── Frame.cpp │ │ │ │ ├── Frame.hpp │ │ │ │ ├── Initializeable.cpp │ │ │ │ ├── Initializeable.hpp │ │ │ │ ├── Page.cpp │ │ │ │ ├── Page.hpp │ │ │ │ ├── PageBasedFileHandle.cpp │ │ │ │ ├── PageBasedFileHandle.hpp │ │ │ │ ├── Pager.cpp │ │ │ │ ├── Pager.hpp │ │ │ │ ├── PagerRelated.cpp │ │ │ │ ├── PagerRelated.hpp │ │ │ │ ├── Shm.cpp │ │ │ │ ├── Shm.hpp │ │ │ │ ├── Wal.cpp │ │ │ │ ├── Wal.hpp │ │ │ │ ├── WalRelated.cpp │ │ │ │ └── WalRelated.hpp │ │ │ ├── sqlite/ │ │ │ │ ├── SQLiteAssembler.cpp │ │ │ │ ├── SQLiteAssembler.hpp │ │ │ │ ├── SQLiteBase.cpp │ │ │ │ ├── SQLiteBase.hpp │ │ │ │ ├── SQLiteLocker.cpp │ │ │ │ └── SQLiteLocker.hpp │ │ │ └── utility/ │ │ │ ├── Fraction.cpp │ │ │ └── Fraction.hpp │ │ ├── utility/ │ │ │ ├── AsyncQueue.cpp │ │ │ ├── AsyncQueue.hpp │ │ │ ├── CaseInsensitiveList.hpp │ │ │ ├── Enum.hpp │ │ │ ├── Exiting.cpp │ │ │ ├── Exiting.hpp │ │ │ ├── Macro.h │ │ │ ├── Shadow.hpp │ │ │ ├── TimedQueue.hpp │ │ │ ├── UniqueList.hpp │ │ │ └── WCDBVersion.h │ │ └── winq/ │ │ ├── SQL.cpp │ │ ├── SQL.hpp │ │ ├── Statement.cpp │ │ ├── Statement.hpp │ │ ├── WINQ.h │ │ ├── extension/ │ │ │ ├── AggregateFunction.cpp │ │ │ ├── AggregateFunction.hpp │ │ │ ├── BaseBinding.cpp │ │ │ ├── BaseBinding.hpp │ │ │ ├── ColumnType.cpp │ │ │ ├── ColumnType.hpp │ │ │ ├── Convertible.hpp │ │ │ ├── ConvertibleImplementation.cpp │ │ │ ├── ConvertibleImplementation.hpp │ │ │ ├── CoreFunction.cpp │ │ │ ├── CoreFunction.hpp │ │ │ ├── ExpressionOperable.cpp │ │ │ ├── ExpressionOperable.hpp │ │ │ ├── FTSFunction.cpp │ │ │ ├── FTSFunction.hpp │ │ │ ├── SyntaxForwardDeclaration.h │ │ │ ├── SyntaxList.hpp │ │ │ ├── Value.cpp │ │ │ ├── Value.hpp │ │ │ └── ValueArray.hpp │ │ ├── identifier/ │ │ │ ├── BindParameter.cpp │ │ │ ├── BindParameter.hpp │ │ │ ├── Column.cpp │ │ │ ├── Column.hpp │ │ │ ├── ColumnConstraint.cpp │ │ │ ├── ColumnConstraint.hpp │ │ │ ├── ColumnDef.cpp │ │ │ ├── ColumnDef.hpp │ │ │ ├── CommonTableExpression.cpp │ │ │ ├── CommonTableExpression.hpp │ │ │ ├── Expression.cpp │ │ │ ├── Expression.hpp │ │ │ ├── Filter.cpp │ │ │ ├── Filter.hpp │ │ │ ├── ForeignKey.cpp │ │ │ ├── ForeignKey.hpp │ │ │ ├── FrameSpec.cpp │ │ │ ├── FrameSpec.hpp │ │ │ ├── IndexedColumn.cpp │ │ │ ├── IndexedColumn.hpp │ │ │ ├── Join.cpp │ │ │ ├── Join.hpp │ │ │ ├── JoinConstraint.cpp │ │ │ ├── JoinConstraint.hpp │ │ │ ├── LiteralValue.cpp │ │ │ ├── LiteralValue.hpp │ │ │ ├── OrderingTerm.cpp │ │ │ ├── OrderingTerm.hpp │ │ │ ├── Pragma.cpp │ │ │ ├── Pragma.hpp │ │ │ ├── QualifiedTable.cpp │ │ │ ├── QualifiedTable.hpp │ │ │ ├── RaiseFunction.cpp │ │ │ ├── RaiseFunction.hpp │ │ │ ├── ResultColumn.cpp │ │ │ ├── ResultColumn.hpp │ │ │ ├── Schema.cpp │ │ │ ├── Schema.hpp │ │ │ ├── TableConstraint.cpp │ │ │ ├── TableConstraint.hpp │ │ │ ├── TableOrSubquery.cpp │ │ │ ├── TableOrSubquery.hpp │ │ │ ├── Upsert.cpp │ │ │ ├── Upsert.hpp │ │ │ ├── WindowDef.cpp │ │ │ └── WindowDef.hpp │ │ ├── statement/ │ │ │ ├── StatementAlterTable.cpp │ │ │ ├── StatementAlterTable.hpp │ │ │ ├── StatementAnalyze.cpp │ │ │ ├── StatementAnalyze.hpp │ │ │ ├── StatementAttach.cpp │ │ │ ├── StatementAttach.hpp │ │ │ ├── StatementBegin.cpp │ │ │ ├── StatementBegin.hpp │ │ │ ├── StatementCommit.cpp │ │ │ ├── StatementCommit.hpp │ │ │ ├── StatementCreateIndex.cpp │ │ │ ├── StatementCreateIndex.hpp │ │ │ ├── StatementCreateTable.cpp │ │ │ ├── StatementCreateTable.hpp │ │ │ ├── StatementCreateTrigger.cpp │ │ │ ├── StatementCreateTrigger.hpp │ │ │ ├── StatementCreateView.cpp │ │ │ ├── StatementCreateView.hpp │ │ │ ├── StatementCreateVirtualTable.cpp │ │ │ ├── StatementCreateVirtualTable.hpp │ │ │ ├── StatementDelete.cpp │ │ │ ├── StatementDelete.hpp │ │ │ ├── StatementDetach.cpp │ │ │ ├── StatementDetach.hpp │ │ │ ├── StatementDropIndex.cpp │ │ │ ├── StatementDropIndex.hpp │ │ │ ├── StatementDropTable.cpp │ │ │ ├── StatementDropTable.hpp │ │ │ ├── StatementDropTrigger.cpp │ │ │ ├── StatementDropTrigger.hpp │ │ │ ├── StatementDropView.cpp │ │ │ ├── StatementDropView.hpp │ │ │ ├── StatementExplain.cpp │ │ │ ├── StatementExplain.hpp │ │ │ ├── StatementInsert.cpp │ │ │ ├── StatementInsert.hpp │ │ │ ├── StatementPragma.cpp │ │ │ ├── StatementPragma.hpp │ │ │ ├── StatementReindex.cpp │ │ │ ├── StatementReindex.hpp │ │ │ ├── StatementRelease.cpp │ │ │ ├── StatementRelease.hpp │ │ │ ├── StatementRollback.cpp │ │ │ ├── StatementRollback.hpp │ │ │ ├── StatementSavepoint.cpp │ │ │ ├── StatementSavepoint.hpp │ │ │ ├── StatementSelect.cpp │ │ │ ├── StatementSelect.hpp │ │ │ ├── StatementUpdate.cpp │ │ │ ├── StatementUpdate.hpp │ │ │ ├── StatementVacuum.cpp │ │ │ └── StatementVacuum.hpp │ │ └── syntax/ │ │ ├── Syntax.h │ │ ├── SyntaxAssertion.hpp │ │ ├── SyntaxEnum.hpp │ │ ├── const/ │ │ │ ├── SyntaxCommonConst.cpp │ │ │ └── SyntaxCommonConst.hpp │ │ ├── identifier/ │ │ │ ├── SyntaxBindParameter.cpp │ │ │ ├── SyntaxBindParameter.hpp │ │ │ ├── SyntaxColumn.cpp │ │ │ ├── SyntaxColumn.hpp │ │ │ ├── SyntaxColumnConstraint.cpp │ │ │ ├── SyntaxColumnConstraint.hpp │ │ │ ├── SyntaxColumnDef.cpp │ │ │ ├── SyntaxColumnDef.hpp │ │ │ ├── SyntaxCommonTableExpression.cpp │ │ │ ├── SyntaxCommonTableExpression.hpp │ │ │ ├── SyntaxExpression.cpp │ │ │ ├── SyntaxExpression.hpp │ │ │ ├── SyntaxFilter.cpp │ │ │ ├── SyntaxFilter.hpp │ │ │ ├── SyntaxForeignKeyClause.cpp │ │ │ ├── SyntaxForeignKeyClause.hpp │ │ │ ├── SyntaxFrameSpec.cpp │ │ │ ├── SyntaxFrameSpec.hpp │ │ │ ├── SyntaxIdentifier.cpp │ │ │ ├── SyntaxIdentifier.hpp │ │ │ ├── SyntaxIndexedColumn.cpp │ │ │ ├── SyntaxIndexedColumn.hpp │ │ │ ├── SyntaxJoinClause.cpp │ │ │ ├── SyntaxJoinClause.hpp │ │ │ ├── SyntaxJoinConstraint.cpp │ │ │ ├── SyntaxJoinConstraint.hpp │ │ │ ├── SyntaxLiteralValue.cpp │ │ │ ├── SyntaxLiteralValue.hpp │ │ │ ├── SyntaxOrderingTerm.cpp │ │ │ ├── SyntaxOrderingTerm.hpp │ │ │ ├── SyntaxPragma.cpp │ │ │ ├── SyntaxPragma.hpp │ │ │ ├── SyntaxQualifiedTableName.cpp │ │ │ ├── SyntaxQualifiedTableName.hpp │ │ │ ├── SyntaxRaiseFunction.cpp │ │ │ ├── SyntaxRaiseFunction.hpp │ │ │ ├── SyntaxResultColumn.cpp │ │ │ ├── SyntaxResultColumn.hpp │ │ │ ├── SyntaxSchema.cpp │ │ │ ├── SyntaxSchema.hpp │ │ │ ├── SyntaxSelectCore.cpp │ │ │ ├── SyntaxSelectCore.hpp │ │ │ ├── SyntaxTableConstraint.cpp │ │ │ ├── SyntaxTableConstraint.hpp │ │ │ ├── SyntaxTableOrSubquery.cpp │ │ │ ├── SyntaxTableOrSubquery.hpp │ │ │ ├── SyntaxUpsertClause.cpp │ │ │ ├── SyntaxUpsertClause.hpp │ │ │ ├── SyntaxWindowDef.cpp │ │ │ └── SyntaxWindowDef.hpp │ │ └── stmt/ │ │ ├── SyntaxAlterTableSTMT.cpp │ │ ├── SyntaxAlterTableSTMT.hpp │ │ ├── SyntaxAnalyzeSTMT.cpp │ │ ├── SyntaxAnalyzeSTMT.hpp │ │ ├── SyntaxAttachSTMT.cpp │ │ ├── SyntaxAttachSTMT.hpp │ │ ├── SyntaxBeginSTMT.cpp │ │ ├── SyntaxBeginSTMT.hpp │ │ ├── SyntaxCommitSTMT.cpp │ │ ├── SyntaxCommitSTMT.hpp │ │ ├── SyntaxCreateIndexSTMT.cpp │ │ ├── SyntaxCreateIndexSTMT.hpp │ │ ├── SyntaxCreateTableSTMT.cpp │ │ ├── SyntaxCreateTableSTMT.hpp │ │ ├── SyntaxCreateTriggerSTMT.cpp │ │ ├── SyntaxCreateTriggerSTMT.hpp │ │ ├── SyntaxCreateViewSTMT.cpp │ │ ├── SyntaxCreateViewSTMT.hpp │ │ ├── SyntaxCreateVirtualTableSTMT.cpp │ │ ├── SyntaxCreateVirtualTableSTMT.hpp │ │ ├── SyntaxDeleteSTMT.cpp │ │ ├── SyntaxDeleteSTMT.hpp │ │ ├── SyntaxDetachSTMT.cpp │ │ ├── SyntaxDetachSTMT.hpp │ │ ├── SyntaxDropIndexSTMT.cpp │ │ ├── SyntaxDropIndexSTMT.hpp │ │ ├── SyntaxDropTableSTMT.cpp │ │ ├── SyntaxDropTableSTMT.hpp │ │ ├── SyntaxDropTriggerSTMT.cpp │ │ ├── SyntaxDropTriggerSTMT.hpp │ │ ├── SyntaxDropViewSTMT.cpp │ │ ├── SyntaxDropViewSTMT.hpp │ │ ├── SyntaxExplainSTMT.cpp │ │ ├── SyntaxExplainSTMT.hpp │ │ ├── SyntaxInsertSTMT.cpp │ │ ├── SyntaxInsertSTMT.hpp │ │ ├── SyntaxPragmaSTMT.cpp │ │ ├── SyntaxPragmaSTMT.hpp │ │ ├── SyntaxReindexSTMT.cpp │ │ ├── SyntaxReindexSTMT.hpp │ │ ├── SyntaxReleaseSTMT.cpp │ │ ├── SyntaxReleaseSTMT.hpp │ │ ├── SyntaxRollbackSTMT.cpp │ │ ├── SyntaxRollbackSTMT.hpp │ │ ├── SyntaxSavepointSTMT.cpp │ │ ├── SyntaxSavepointSTMT.hpp │ │ ├── SyntaxSelectSTMT.cpp │ │ ├── SyntaxSelectSTMT.hpp │ │ ├── SyntaxUpdateSTMT.cpp │ │ ├── SyntaxUpdateSTMT.hpp │ │ ├── SyntaxVacuumSTMT.cpp │ │ └── SyntaxVacuumSTMT.hpp │ ├── cpp/ │ │ ├── Operation/ │ │ │ ├── BaseOperation.cpp │ │ │ ├── BaseOperation.hpp │ │ │ ├── HandleORMOperation.cpp │ │ │ ├── HandleORMOperation.hpp │ │ │ ├── HandleOperation.cpp │ │ │ ├── HandleOperation.hpp │ │ │ ├── StatementOperation.cpp │ │ │ ├── StatementOperation.hpp │ │ │ ├── TableORMOperation.hpp │ │ │ ├── TableOperation.cpp │ │ │ └── TableOperation.hpp │ │ ├── WCDBCpp.h │ │ ├── builtin/ │ │ │ ├── Builtin.h │ │ │ ├── Master.cpp │ │ │ ├── Master.hpp │ │ │ ├── Sequence.cpp │ │ │ └── Sequence.hpp │ │ ├── chaincall/ │ │ │ ├── ChainCall.cpp │ │ │ ├── ChainCall.hpp │ │ │ ├── Delete.cpp │ │ │ ├── Delete.hpp │ │ │ ├── Insert.hpp │ │ │ ├── MultiObject.cpp │ │ │ ├── MultiObject.hpp │ │ │ ├── MultiSelect.cpp │ │ │ ├── MultiSelect.hpp │ │ │ ├── Select.hpp │ │ │ └── Update.hpp │ │ ├── core/ │ │ │ ├── CPPDeclaration.h │ │ │ ├── CppInterface.h │ │ │ ├── Database.cpp │ │ │ ├── Database.hpp │ │ │ ├── Handle.cpp │ │ │ ├── Handle.hpp │ │ │ ├── PreparedStatement.cpp │ │ │ ├── PreparedStatement.hpp │ │ │ ├── Table.cpp │ │ │ └── Table.hpp │ │ ├── orm/ │ │ │ ├── CPPORM.h │ │ │ ├── binding/ │ │ │ │ ├── Accessor.cpp │ │ │ │ ├── Accessor.hpp │ │ │ │ ├── Binding.cpp │ │ │ │ ├── Binding.hpp │ │ │ │ ├── Field.cpp │ │ │ │ ├── Field.hpp │ │ │ │ ├── ResultField.cpp │ │ │ │ ├── ResultField.hpp │ │ │ │ ├── RunTimeAccessor.hpp │ │ │ │ ├── STDOptionalAccessor.hpp │ │ │ │ ├── SharedPtrAccessor.hpp │ │ │ │ └── WCDBOptionalAccessor.hpp │ │ │ ├── fts/ │ │ │ │ ├── FTSTokenizerUtil.cpp │ │ │ │ └── FTSTokenizerUtil.hpp │ │ │ └── macro/ │ │ │ ├── CPPBindingMacro.h │ │ │ ├── CPPColumnConstraintMacro.h │ │ │ ├── CPPFieldMacro.h │ │ │ ├── CPPIndexMacro.h │ │ │ ├── CPPORMMacro.h │ │ │ ├── CPPTableConstraintMacro.h │ │ │ └── CPPVirtualTableMacro.h │ │ └── tests/ │ │ ├── common/ │ │ │ ├── CPPBaseTestCase.h │ │ │ ├── CPPBaseTestCase.mm │ │ │ ├── CPPCRUDTestCase.h │ │ │ ├── CPPCRUDTestCase.mm │ │ │ ├── CPPDatabaseTestCase.h │ │ │ ├── CPPDatabaseTestCase.mm │ │ │ ├── CPPORMTestUtil.h │ │ │ ├── CPPTableTestCase.h │ │ │ ├── CPPTableTestCase.mm │ │ │ ├── CPPTestCase.h │ │ │ ├── CPPTestCaseAssertion.h │ │ │ ├── CPPTestCaseObject.cpp │ │ │ ├── CPPTestCaseObject.h │ │ │ ├── Random+CPPTestObject.h │ │ │ └── Random+CPPTestObject.mm │ │ ├── fts/ │ │ │ ├── CPPFTS3Object.h │ │ │ ├── CPPFTS3Object.mm │ │ │ ├── CPPFTS3Tests.mm │ │ │ ├── CPPFTS5Object.h │ │ │ ├── CPPFTS5Object.mm │ │ │ └── CPPFTS5Tests.mm │ │ ├── interface/ │ │ │ ├── CPPConfigTests.mm │ │ │ ├── CPPDatabaseTest.mm │ │ │ ├── CPPFileTests.mm │ │ │ ├── CPPHandleTest.mm │ │ │ ├── CPPTableTest.mm │ │ │ └── CPPTraceTest.mm │ │ ├── operation/ │ │ │ ├── ChainCallTests.mm │ │ │ ├── HandleOperationTests.mm │ │ │ ├── ORMDeleteTests.mm │ │ │ ├── ORMInsertTests.mm │ │ │ ├── ORMMultiSelectTests.mm │ │ │ ├── ORMSelectTests.mm │ │ │ ├── ORMUpdateTests.mm │ │ │ └── StatementOperationTests.mm │ │ └── orm/ │ │ ├── CPPORMTests.mm │ │ ├── alltypes/ │ │ │ ├── CPPAllTypesObject.h │ │ │ ├── CPPAllTypesObject.mm │ │ │ ├── CPPSTDOptionalAllTypesObject.h │ │ │ ├── CPPSTDOptionalAllTypesObject.mm │ │ │ ├── CPPSharedPtrAllTypesObject.h │ │ │ ├── CPPSharedPtrAllTypesObject.mm │ │ │ ├── CPPWCDBOptionalAllTypesObject.h │ │ │ └── CPPWCDBOptionalAllTypesObject.mm │ │ ├── column_constraint/ │ │ │ ├── CPPColumnConstraintAutoIncrement.cpp │ │ │ ├── CPPColumnConstraintAutoIncrement.hpp │ │ │ ├── CPPColumnConstraintAutoIncrementAsc.cpp │ │ │ ├── CPPColumnConstraintAutoIncrementAsc.hpp │ │ │ ├── CPPColumnConstraintDefault.cpp │ │ │ ├── CPPColumnConstraintDefault.hpp │ │ │ ├── CPPColumnConstraintEnablePrimaryAutoIncrement.cpp │ │ │ ├── CPPColumnConstraintEnablePrimaryAutoIncrement.hpp │ │ │ ├── CPPColumnConstraintPrimary.cpp │ │ │ ├── CPPColumnConstraintPrimary.hpp │ │ │ ├── CPPColumnConstraintPrimaryAsc.cpp │ │ │ ├── CPPColumnConstraintPrimaryAsc.hpp │ │ │ ├── CPPColumnConstraintPrimaryDesc.cpp │ │ │ ├── CPPColumnConstraintPrimaryDesc.hpp │ │ │ ├── CPPColumnConstraintUnique.cpp │ │ │ └── CPPColumnConstraintUnique.hpp │ │ ├── field/ │ │ │ ├── CPPFieldObject.h │ │ │ └── CPPNewFieldObject.h │ │ ├── index_object/ │ │ │ ├── CPPIndexObject.cpp │ │ │ └── CPPIndexObject.hpp │ │ ├── inherit/ │ │ │ ├── CPPInheritObject.cpp │ │ │ └── CPPInheritObject.hpp │ │ ├── rebind/ │ │ │ ├── CPPDropIndexObject.cpp │ │ │ ├── CPPDropIndexObject.hpp │ │ │ ├── CPPNewRemapObject.cpp │ │ │ ├── CPPNewRemapObject.hpp │ │ │ ├── CPPNewlyCreatedTableIndexObject.cpp │ │ │ ├── CPPNewlyCreatedTableIndexObject.hpp │ │ │ ├── CPPOldRemapObject.cpp │ │ │ └── CPPOldRemapObject.hpp │ │ ├── table_constraint/ │ │ │ ├── CPPTableConstraintObject.cpp │ │ │ └── CPPTableConstraintObject.hpp │ │ └── virtual_table/ │ │ ├── CPPVirtualTableFTS4Object.cpp │ │ ├── CPPVirtualTableFTS4Object.hpp │ │ ├── CPPVirtualTableFTS5Object.cpp │ │ └── CPPVirtualTableFTS5Object.hpp │ ├── java/ │ │ ├── .gitignore │ │ ├── annotation/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ └── src/ │ │ │ └── main/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── tencent/ │ │ │ └── wcdb/ │ │ │ ├── FTSModule.java │ │ │ ├── FTSVersion.java │ │ │ ├── MultiIndexes.java │ │ │ ├── MultiPrimary.java │ │ │ ├── MultiUnique.java │ │ │ ├── WCDBDefault.java │ │ │ ├── WCDBField.java │ │ │ ├── WCDBIndex.java │ │ │ └── WCDBTableCoding.java │ │ ├── build.gradle │ │ ├── builder/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── compiler/ │ │ │ │ ├── .gitignore │ │ │ │ ├── build.gradle │ │ │ │ └── src/ │ │ │ │ └── main/ │ │ │ │ ├── java/ │ │ │ │ │ └── com/ │ │ │ │ │ └── tencent/ │ │ │ │ │ └── wcdb/ │ │ │ │ │ ├── compiler/ │ │ │ │ │ │ ├── JavaAnnotationProcessor.java │ │ │ │ │ │ ├── JavaCodeGenerator.java │ │ │ │ │ │ ├── JavaFieldORMInfo.java │ │ │ │ │ │ ├── KotlinAnnotationProcessor.kt │ │ │ │ │ │ ├── KotlinCodeGenerator.kt │ │ │ │ │ │ ├── KotlinPropertyORMInfo.kt │ │ │ │ │ │ └── resolvedInfo/ │ │ │ │ │ │ ├── ColumnInfo.kt │ │ │ │ │ │ ├── DefaultValueInfo.kt │ │ │ │ │ │ ├── FTSModuleInfo.kt │ │ │ │ │ │ ├── MultiIndexesInfo.kt │ │ │ │ │ │ ├── MultiPrimaryInfo.kt │ │ │ │ │ │ ├── MultiUniqueInfo.kt │ │ │ │ │ │ ├── ResolveTool.kt │ │ │ │ │ │ └── TableConfigInfo.kt │ │ │ │ │ ├── core/ │ │ │ │ │ │ └── PreparedStatement.java │ │ │ │ │ ├── fts/ │ │ │ │ │ │ └── BuiltinTokenizer.java │ │ │ │ │ ├── orm/ │ │ │ │ │ │ ├── Binding.java │ │ │ │ │ │ ├── Field.java │ │ │ │ │ │ └── TableBinding.java │ │ │ │ │ └── winq/ │ │ │ │ │ ├── Column.java │ │ │ │ │ ├── ColumnConstraint.java │ │ │ │ │ ├── ColumnDef.java │ │ │ │ │ ├── ColumnType.java │ │ │ │ │ ├── ConflictAction.java │ │ │ │ │ ├── ExpressionOperable.java │ │ │ │ │ ├── ForeignKey.java │ │ │ │ │ ├── Identifier.java │ │ │ │ │ ├── IndexedColumnConvertible.java │ │ │ │ │ ├── Order.java │ │ │ │ │ ├── Schema.java │ │ │ │ │ ├── StatementCreateIndex.java │ │ │ │ │ └── TableConstraint.java │ │ │ │ └── resources/ │ │ │ │ └── META-INF/ │ │ │ │ ├── gradle/ │ │ │ │ │ └── incremental.annotation.processors │ │ │ │ └── services/ │ │ │ │ ├── com.google.devtools.ksp.processing.SymbolProcessorProvider │ │ │ │ └── javax.annotation.processing.Processor │ │ │ ├── gradle-plugin/ │ │ │ │ ├── .gitignore │ │ │ │ ├── build.gradle │ │ │ │ └── src/ │ │ │ │ └── main/ │ │ │ │ └── groovy/ │ │ │ │ └── com/ │ │ │ │ └── tencent/ │ │ │ │ └── wcdb/ │ │ │ │ └── gradle/ │ │ │ │ ├── WCDBOrmSourceDirectorySet.groovy │ │ │ │ ├── WCDBOrmSourceDirectorySetG7.groovy │ │ │ │ └── WCDBPlugin.groovy │ │ │ └── settings.gradle │ │ ├── compat/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── tencent/ │ │ │ └── wcdb/ │ │ │ └── compat/ │ │ │ ├── DatabaseErrorHandler.java │ │ │ ├── DatabaseUtils.java │ │ │ ├── SQLiteCipherSpec.java │ │ │ ├── SQLiteDatabase.java │ │ │ ├── SQLiteStatement.java │ │ │ └── ValueCursor.java │ │ ├── gradle/ │ │ │ ├── WeChatPublish.gradle │ │ │ └── wrapper/ │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ │ ├── gradle.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── kotlin-test/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src/ │ │ │ ├── androidTest/ │ │ │ │ └── java/ │ │ │ │ └── com/ │ │ │ │ └── tencent/ │ │ │ │ └── wcdbtest/ │ │ │ │ ├── base/ │ │ │ │ │ ├── BaseTestCase.kt │ │ │ │ │ ├── CRUDTestCase.kt │ │ │ │ │ ├── DatabaseTestCase.kt │ │ │ │ │ ├── ObjectCRUDTestCase.kt │ │ │ │ │ ├── RandomTool.kt │ │ │ │ │ ├── TableTestCase.kt │ │ │ │ │ ├── TestObject.kt │ │ │ │ │ └── WrappedValue.kt │ │ │ │ ├── crud/ │ │ │ │ │ ├── ObjectDeleteTest.kt │ │ │ │ │ ├── ObjectInsertTest.kt │ │ │ │ │ ├── ObjectSelectTest.kt │ │ │ │ │ └── ObjectUpdateTest.kt │ │ │ │ └── orm/ │ │ │ │ ├── ORMTest.kt │ │ │ │ └── testclass/ │ │ │ │ ├── AllTypeObject.kt │ │ │ │ ├── AutoAddColumnObject.kt │ │ │ │ ├── ColumnConstraintAutoIncrementObject.kt │ │ │ │ ├── ColumnConstraintDefaultObject.kt │ │ │ │ ├── ColumnConstraintDefaultZeroObject.kt │ │ │ │ ├── ColumnConstraintNotNullObject.kt │ │ │ │ ├── ColumnConstraintPrimaryObject.kt │ │ │ │ ├── ColumnConstraintUniqueObject.kt │ │ │ │ ├── DataIndexObject.kt │ │ │ │ ├── FTS3TestObject.kt │ │ │ │ ├── FTS5TestObject.kt │ │ │ │ ├── FieldObject.kt │ │ │ │ ├── IndexObject.kt │ │ │ │ ├── NewRemapObject.kt │ │ │ │ ├── OldRemapObject.kt │ │ │ │ ├── PrimaryEnableAutoIncrementObject.kt │ │ │ │ ├── PrimaryNotAutoIncrementObject.kt │ │ │ │ └── TableConstraintObject.kt │ │ │ └── main/ │ │ │ ├── AndroidManifest.xml │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── tencent/ │ │ │ └── wcdbtest/ │ │ │ ├── MainActivity.kt │ │ │ ├── RandomTool.kt │ │ │ ├── TestObject.kt │ │ │ └── WrappedValue.kt │ │ ├── main/ │ │ │ ├── .gitignore │ │ │ ├── build.gradle │ │ │ ├── proguard-rules.pro │ │ │ └── src/ │ │ │ └── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── cpp/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── JNIBinding.c │ │ │ │ ├── base/ │ │ │ │ │ ├── ErrorJNI.c │ │ │ │ │ ├── ErrorJNI.h │ │ │ │ │ ├── WCDBExtendJNI.cpp │ │ │ │ │ ├── WCDBJNI.c │ │ │ │ │ └── WCDBJNI.h │ │ │ │ ├── core/ │ │ │ │ │ ├── BindingJNI.c │ │ │ │ │ ├── BindingJNI.h │ │ │ │ │ ├── CoreJNI.c │ │ │ │ │ ├── CoreJNI.h │ │ │ │ │ ├── DatabaseExtendJNI.cpp │ │ │ │ │ ├── DatabaseExtendJNI.h │ │ │ │ │ ├── DatabaseJNI.c │ │ │ │ │ ├── DatabaseJNI.h │ │ │ │ │ ├── HandleJNI.c │ │ │ │ │ ├── HandleJNI.h │ │ │ │ │ ├── HandleStatementJNI.c │ │ │ │ │ └── HandleStatementJNI.h │ │ │ │ └── winq/ │ │ │ │ ├── Statement/ │ │ │ │ │ ├── StatementAlterTableJNI.c │ │ │ │ │ ├── StatementAlterTableJNI.h │ │ │ │ │ ├── StatementAnalyzeJNI.c │ │ │ │ │ ├── StatementAnalyzeJNI.h │ │ │ │ │ ├── StatementAttachJNI.c │ │ │ │ │ ├── StatementAttachJNI.h │ │ │ │ │ ├── StatementBeginJNI.c │ │ │ │ │ ├── StatementBeginJNI.h │ │ │ │ │ ├── StatementCommitJNI.c │ │ │ │ │ ├── StatementCommitJNI.h │ │ │ │ │ ├── StatementCreateTableJNI.c │ │ │ │ │ ├── StatementCreateTableJNI.h │ │ │ │ │ ├── StatementCreateTriggerJNI.c │ │ │ │ │ ├── StatementCreateTriggerJNI.h │ │ │ │ │ ├── StatementCreateViewJNI.c │ │ │ │ │ ├── StatementCreateViewJNI.h │ │ │ │ │ ├── StatementCreateVirtualTableJNI.c │ │ │ │ │ ├── StatementCreateVirtualTableJNI.h │ │ │ │ │ ├── StatementCreateindexJNI.c │ │ │ │ │ ├── StatementCreateindexJNI.h │ │ │ │ │ ├── StatementDeleteJNI.c │ │ │ │ │ ├── StatementDeleteJNI.h │ │ │ │ │ ├── StatementDetachJNI.c │ │ │ │ │ ├── StatementDetachJNI.h │ │ │ │ │ ├── StatementDropIndexJNI.c │ │ │ │ │ ├── StatementDropIndexJNI.h │ │ │ │ │ ├── StatementDropTableJNI.c │ │ │ │ │ ├── StatementDropTableJNI.h │ │ │ │ │ ├── StatementDropTriggerJNI.c │ │ │ │ │ ├── StatementDropTriggerJNI.h │ │ │ │ │ ├── StatementDropViewJNI.c │ │ │ │ │ ├── StatementDropViewJNI.h │ │ │ │ │ ├── StatementExplainJNI.c │ │ │ │ │ ├── StatementExplainJNI.h │ │ │ │ │ ├── StatementInsertJNI.c │ │ │ │ │ ├── StatementInsertJNI.h │ │ │ │ │ ├── StatementPragmaJNI.c │ │ │ │ │ ├── StatementPragmaJNI.h │ │ │ │ │ ├── StatementReindexJNI.c │ │ │ │ │ ├── StatementReindexJNI.h │ │ │ │ │ ├── StatementReleaseJNI.c │ │ │ │ │ ├── StatementReleaseJNI.h │ │ │ │ │ ├── StatementRollbackJNI.c │ │ │ │ │ ├── StatementRollbackJNI.h │ │ │ │ │ ├── StatementSelectJNI.c │ │ │ │ │ ├── StatementSelectJNI.h │ │ │ │ │ ├── StatementUpdateJNI.c │ │ │ │ │ ├── StatementUpdateJNI.h │ │ │ │ │ ├── StatementVacuumJNI.c │ │ │ │ │ └── StatementVacuumJNI.h │ │ │ │ ├── WinqJNI.c │ │ │ │ ├── WinqJNI.h │ │ │ │ └── identifier/ │ │ │ │ ├── BindParameterJNI.c │ │ │ │ ├── BindParameterJNI.h │ │ │ │ ├── ColumnConstraintJNI.c │ │ │ │ ├── ColumnConstraintJNI.h │ │ │ │ ├── ColumnDefJNI.c │ │ │ │ ├── ColumnDefJNI.h │ │ │ │ ├── ColumnJNI.c │ │ │ │ ├── ColumnJNI.h │ │ │ │ ├── CommonTableExpressionJNI.c │ │ │ │ ├── CommonTableExpressionJNI.h │ │ │ │ ├── ExpressionJNI.c │ │ │ │ ├── ExpressionJNI.h │ │ │ │ ├── ExpressionOperableJNI.c │ │ │ │ ├── ExpressionOperableJNI.h │ │ │ │ ├── ForeignKeyJNI.c │ │ │ │ ├── ForeignKeyJNI.h │ │ │ │ ├── FrameSpecJNI.c │ │ │ │ ├── FrameSpecJNI.h │ │ │ │ ├── IndexedColumnJNI.c │ │ │ │ ├── IndexedColumnJNI.h │ │ │ │ ├── JoinJNI.c │ │ │ │ ├── JoinJNI.h │ │ │ │ ├── LiteralValueJNI.c │ │ │ │ ├── LiteralValueJNI.h │ │ │ │ ├── OrderingTermJNI.c │ │ │ │ ├── OrderingTermJNI.h │ │ │ │ ├── PragmaJNI.c │ │ │ │ ├── PragmaJNI.h │ │ │ │ ├── QualifiedTableJNI.c │ │ │ │ ├── QualifiedTableJNI.h │ │ │ │ ├── RaiseFunctionJNI.c │ │ │ │ ├── RaiseFunctionJNI.h │ │ │ │ ├── ResultColumnJNI.c │ │ │ │ ├── ResultColumnJNI.h │ │ │ │ ├── SchemaJNI.c │ │ │ │ ├── SchemaJNI.h │ │ │ │ ├── TableConstraintJNI.c │ │ │ │ ├── TableConstraintJNI.h │ │ │ │ ├── TableOrSubqueryJNI.c │ │ │ │ ├── TableOrSubqueryJNI.h │ │ │ │ ├── UpsertJNI.c │ │ │ │ ├── UpsertJNI.h │ │ │ │ ├── WindowDefJNI.c │ │ │ │ └── WindowDefJNI.h │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── tencent/ │ │ │ └── wcdb/ │ │ │ ├── base/ │ │ │ │ ├── CppObject.java │ │ │ │ ├── CppObjectConvertible.java │ │ │ │ ├── Value.java │ │ │ │ ├── WCDBCorruptOrIOException.java │ │ │ │ ├── WCDBException.java │ │ │ │ ├── WCDBInterruptException.java │ │ │ │ └── WCDBNormalException.java │ │ │ ├── chaincall/ │ │ │ │ ├── ChainCall.java │ │ │ │ ├── Delete.java │ │ │ │ ├── Insert.java │ │ │ │ ├── Select.java │ │ │ │ └── Update.java │ │ │ ├── core/ │ │ │ │ ├── Database.java │ │ │ │ ├── Handle.java │ │ │ │ ├── HandleORMOperation.java │ │ │ │ ├── HandleOperation.java │ │ │ │ ├── PausableTransaction.java │ │ │ │ ├── PreparedStatement.java │ │ │ │ ├── Table.java │ │ │ │ ├── TableORMOperation.java │ │ │ │ ├── TableOperation.java │ │ │ │ └── Transaction.java │ │ │ ├── fts/ │ │ │ │ ├── BuiltinFTSAuxiliaryFunction.java │ │ │ │ └── BuiltinTokenizer.java │ │ │ ├── orm/ │ │ │ │ ├── Binding.java │ │ │ │ ├── Field.java │ │ │ │ └── TableBinding.java │ │ │ └── winq/ │ │ │ ├── BindParameter.java │ │ │ ├── Column.java │ │ │ ├── ColumnConstraint.java │ │ │ ├── ColumnDef.java │ │ │ ├── ColumnType.java │ │ │ ├── CommonTableExpression.java │ │ │ ├── ConflictAction.java │ │ │ ├── Expression.java │ │ │ ├── ExpressionConvertible.java │ │ │ ├── ExpressionOperable.java │ │ │ ├── ForeignKey.java │ │ │ ├── FrameSpec.java │ │ │ ├── Identifier.java │ │ │ ├── IdentifierConvertible.java │ │ │ ├── IndexedColumn.java │ │ │ ├── IndexedColumnConvertible.java │ │ │ ├── Join.java │ │ │ ├── LiteralValue.java │ │ │ ├── MultiTypeArray.java │ │ │ ├── Order.java │ │ │ ├── OrderingTerm.java │ │ │ ├── Pragma.java │ │ │ ├── QualifiedTable.java │ │ │ ├── RaiseFunction.java │ │ │ ├── ResultColumn.java │ │ │ ├── ResultColumnConvertible.java │ │ │ ├── Schema.java │ │ │ ├── Statement.java │ │ │ ├── StatementAlterTable.java │ │ │ ├── StatementAnalyze.java │ │ │ ├── StatementAttach.java │ │ │ ├── StatementBegin.java │ │ │ ├── StatementCommit.java │ │ │ ├── StatementCreateIndex.java │ │ │ ├── StatementCreateTable.java │ │ │ ├── StatementCreateTrigger.java │ │ │ ├── StatementCreateView.java │ │ │ ├── StatementCreateVirtualTable.java │ │ │ ├── StatementDelete.java │ │ │ ├── StatementDetach.java │ │ │ ├── StatementDropIndex.java │ │ │ ├── StatementDropTable.java │ │ │ ├── StatementDropTrigger.java │ │ │ ├── StatementDropView.java │ │ │ ├── StatementExplain.java │ │ │ ├── StatementInsert.java │ │ │ ├── StatementPragma.java │ │ │ ├── StatementReindex.java │ │ │ ├── StatementRelease.java │ │ │ ├── StatementRollback.java │ │ │ ├── StatementSelect.java │ │ │ ├── StatementUpdate.java │ │ │ ├── StatementVacuum.java │ │ │ ├── TableConstraint.java │ │ │ ├── TableOrSubquery.java │ │ │ ├── TableOrSubqueryConvertible.java │ │ │ ├── Upsert.java │ │ │ └── WindowDef.java │ │ ├── settings.gradle │ │ └── test/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── tencent/ │ │ │ └── wcdbtest/ │ │ │ ├── base/ │ │ │ │ ├── BaseTestCase.java │ │ │ │ ├── CRUDTestCase.java │ │ │ │ ├── DatabaseTestCase.java │ │ │ │ ├── FileTool.java │ │ │ │ ├── ObjectCRUDTestCase.java │ │ │ │ ├── RandomTool.java │ │ │ │ ├── TableTestCase.java │ │ │ │ ├── TestObject.java │ │ │ │ ├── ValueCRUDTestCase.java │ │ │ │ ├── WinqTool.java │ │ │ │ └── WrappedValue.java │ │ │ ├── crud/ │ │ │ │ ├── ChainCallTest.java │ │ │ │ ├── FTSTest.java │ │ │ │ ├── ObjectDeleteTest.java │ │ │ │ ├── ObjectInsertTest.java │ │ │ │ ├── ObjectSelectTest.java │ │ │ │ ├── ObjectUpdateTest.java │ │ │ │ ├── PrepareNewStatementTest.java │ │ │ │ ├── StatementOperationTest.java │ │ │ │ ├── ValueDeleteWithColumnTest.java │ │ │ │ ├── ValueDeleteWithFieldTest.java │ │ │ │ ├── ValueInsertWithColumnTest.java │ │ │ │ ├── ValueInsertWithFieldTest.java │ │ │ │ ├── ValueSelectWithColumnTest.java │ │ │ │ ├── ValueSelectWithFieldTest.java │ │ │ │ ├── ValueUpdateWithColumnTest.java │ │ │ │ └── ValueUpdateWithFieldTest.java │ │ │ ├── database/ │ │ │ │ ├── CompressionTest.java │ │ │ │ ├── ConfigTest.java │ │ │ │ ├── DatabaseTest.java │ │ │ │ ├── FileTest.java │ │ │ │ ├── HandleTest.java │ │ │ │ ├── MigrationTest.java │ │ │ │ ├── RepairTest.java │ │ │ │ └── TraceTest.java │ │ │ ├── orm/ │ │ │ │ ├── ORMTest.java │ │ │ │ └── testclass/ │ │ │ │ └── AllTypeObjectHelper.java │ │ │ ├── sample/ │ │ │ │ └── SimpleSample.java │ │ │ └── winq/ │ │ │ ├── BindParameterTest.java │ │ │ ├── ColumnConstraintTest.java │ │ │ ├── ColumnDefTest.java │ │ │ ├── ColumnTest.java │ │ │ ├── CommonTableExpressionTest.java │ │ │ ├── ExpressionTest.java │ │ │ ├── ForeignKeyTest.java │ │ │ ├── FrameSpecTest.java │ │ │ ├── IndexedColumnTest.java │ │ │ ├── JoinTest.java │ │ │ ├── LiteralValueTest.java │ │ │ ├── OrderingTermTest.java │ │ │ ├── PragmaTest.java │ │ │ ├── QualifiedTableTest.java │ │ │ ├── RaiseFunctionTest.java │ │ │ ├── ResultColumnTest.java │ │ │ ├── SchemaTest.java │ │ │ ├── StatementAlterTableTest.java │ │ │ ├── StatementAnalyzeTest.java │ │ │ ├── StatementAttachTest.java │ │ │ ├── StatementBeginTest.java │ │ │ ├── StatementCommitTest.java │ │ │ ├── StatementCreateIndexTest.java │ │ │ ├── StatementCreateTableTest.java │ │ │ ├── StatementCreateTriggerTest.java │ │ │ ├── StatementCreateViewTest.java │ │ │ ├── StatementCreateVirtualTableTest.java │ │ │ ├── StatementDeleteTest.java │ │ │ ├── StatementDetachTest.java │ │ │ ├── StatementDropIndexTest.java │ │ │ ├── StatementDropTableTest.java │ │ │ ├── StatementDropTriggerTest.java │ │ │ ├── StatementDropViewTest.java │ │ │ ├── StatementExplainTest.java │ │ │ ├── StatementInsertTest.java │ │ │ ├── StatementPragmaTest.java │ │ │ ├── StatementReindexTest.java │ │ │ ├── StatementReleaseTest.java │ │ │ ├── StatementRollbackTest.java │ │ │ ├── StatementSelectTest.java │ │ │ ├── StatementUpdateTest.java │ │ │ ├── StatementVacuumTest.java │ │ │ ├── TableConstraintTest.java │ │ │ ├── TableOrSubqueryTest.java │ │ │ ├── UpsertTest.java │ │ │ └── WindowDefTest.java │ │ └── main/ │ │ ├── AndroidManifest.xml │ │ └── wcdbOrm/ │ │ └── com/ │ │ └── tencent/ │ │ └── wcdbtest/ │ │ ├── base/ │ │ │ ├── PinyinObject.java │ │ │ ├── TestObject.java │ │ │ └── TraditionalChineseObject.java │ │ └── orm/ │ │ └── testclass/ │ │ ├── AllTypeObject.java │ │ ├── AutoAddColumnObject.java │ │ ├── ColumnConstraintAutoIncrementObject.java │ │ ├── ColumnConstraintDefaultObject.java │ │ ├── ColumnConstraintDefaultZeroObject.java │ │ ├── ColumnConstraintNotNullObject.java │ │ ├── ColumnConstraintPrimaryObject.java │ │ ├── ColumnConstraintUniqueObject.java │ │ ├── FTS3TestObject.java │ │ ├── FTS5TestObject.java │ │ ├── FieldObject.java │ │ ├── IndexObject.java │ │ ├── MMICUTestObject.java │ │ ├── NewRemapObject.java │ │ ├── OldRemapObject.java │ │ ├── PrimaryEnableAutoIncrementObject.java │ │ ├── PrimaryNotAutoIncrementObject.java │ │ └── TableConstraintObject.java │ ├── objc/ │ │ ├── Interface.h │ │ ├── WCDBObjc.h │ │ ├── bridge/ │ │ │ ├── WCTBridgeProperty+CPP.h │ │ │ ├── WCTBridgeProperty.h │ │ │ └── WCTBridgeProperty.mm │ │ ├── builtin/ │ │ │ ├── NSData+WCTColumnCoding.h │ │ │ ├── NSData+WCTColumnCoding.mm │ │ │ ├── NSDate+WCTColumnCoding.h │ │ │ ├── NSDate+WCTColumnCoding.mm │ │ │ ├── NSNull+WCTColumnCoding.h │ │ │ ├── NSNull+WCTColumnCoding.mm │ │ │ ├── NSNumber+WCTColumnCoding.h │ │ │ ├── NSNumber+WCTColumnCoding.mm │ │ │ ├── NSObject+WCTColumnCoding.h │ │ │ ├── NSObject+WCTColumnCoding.mm │ │ │ ├── NSString+WCTColumnCoding.h │ │ │ ├── NSString+WCTColumnCoding.mm │ │ │ ├── WCTBuiltin.h │ │ │ ├── WCTMaster+WCTTableCoding.h │ │ │ ├── WCTMaster.h │ │ │ ├── WCTMaster.mm │ │ │ ├── WCTSequence+WCTTableCoding.h │ │ │ ├── WCTSequence.h │ │ │ └── WCTSequence.mm │ │ ├── chaincall/ │ │ │ ├── WCTChainCall+Private.h │ │ │ ├── WCTChainCall.h │ │ │ ├── WCTChainCall.mm │ │ │ ├── WCTDatabase+ChainCall.h │ │ │ ├── WCTDatabase+ChainCall.mm │ │ │ ├── WCTDelete.h │ │ │ ├── WCTDelete.mm │ │ │ ├── WCTHandle+ChainCall.h │ │ │ ├── WCTHandle+ChainCall.mm │ │ │ ├── WCTInsert.h │ │ │ ├── WCTInsert.mm │ │ │ ├── WCTMultiSelect.h │ │ │ ├── WCTMultiSelect.mm │ │ │ ├── WCTSelect.h │ │ │ ├── WCTSelect.mm │ │ │ ├── WCTSelectable+Private.h │ │ │ ├── WCTSelectable.h │ │ │ ├── WCTSelectable.mm │ │ │ ├── WCTTable+ChainCall.h │ │ │ ├── WCTTable+ChainCall.mm │ │ │ ├── WCTTryDisposeGuard.h │ │ │ ├── WCTTryDisposeGuard.mm │ │ │ ├── WCTUpdate.h │ │ │ └── WCTUpdate.mm │ │ ├── compression/ │ │ │ ├── WCTCompressionInfo+Private.h │ │ │ ├── WCTCompressionInfo.h │ │ │ ├── WCTCompressionInfo.mm │ │ │ ├── WCTDatabase+Compression.h │ │ │ └── WCTDatabase+Compression.mm │ │ ├── convenient/ │ │ │ ├── WCTConvenient.h │ │ │ ├── WCTDatabase+Convenient.h │ │ │ ├── WCTDatabase+Convenient.mm │ │ │ ├── WCTHandle+Convenient.h │ │ │ ├── WCTHandle+Convenient.mm │ │ │ ├── WCTTable+Convenient.h │ │ │ └── WCTTable+Convenient.mm │ │ ├── core/ │ │ │ ├── WCTCommon.h │ │ │ ├── WCTConvertible.h │ │ │ ├── WCTConvertible.mm │ │ │ ├── WCTDatabase+Test.h │ │ │ ├── WCTDatabase+Test.mm │ │ │ ├── WCTDatabase+Version.h │ │ │ ├── WCTDatabase+Version.mm │ │ │ ├── WCTDeclaration.h │ │ │ ├── WCTFTSTokenizerUtil.h │ │ │ ├── WCTFTSTokenizerUtil.mm │ │ │ ├── WCTFileManager.mm │ │ │ ├── WCTFoundation.h │ │ │ ├── WCTFoundation.mm │ │ │ ├── WCTOperationQueue.mm │ │ │ ├── WCTOptional.h │ │ │ ├── WCTOptional.mm │ │ │ ├── WCTTag.h │ │ │ ├── WCTValue.h │ │ │ └── WCTValue.mm │ │ ├── database/ │ │ │ ├── WCTDatabase+Config.h │ │ │ ├── WCTDatabase+Config.mm │ │ │ ├── WCTDatabase+File.h │ │ │ ├── WCTDatabase+File.mm │ │ │ ├── WCTDatabase+Memory.h │ │ │ ├── WCTDatabase+Memory.mm │ │ │ ├── WCTDatabase+Private.h │ │ │ ├── WCTDatabase+Repair.h │ │ │ ├── WCTDatabase+Repair.mm │ │ │ ├── WCTDatabase.h │ │ │ └── WCTDatabase.mm │ │ ├── fts/ │ │ │ ├── WCTDatabase+FTS.h │ │ │ └── WCTDatabase+FTS.mm │ │ ├── handle/ │ │ │ ├── WCTCancellationSignal+Private.h │ │ │ ├── WCTCancellationSignal.h │ │ │ ├── WCTCancellationSignal.mm │ │ │ ├── WCTDatabase+Handle.h │ │ │ ├── WCTDatabase+Handle.mm │ │ │ ├── WCTHandle+Private.h │ │ │ ├── WCTHandle.h │ │ │ └── WCTHandle.mm │ │ ├── migration/ │ │ │ ├── WCTDatabase+Migration.h │ │ │ ├── WCTDatabase+Migration.mm │ │ │ ├── WCTMigrationInfo+Private.h │ │ │ ├── WCTMigrationInfo.h │ │ │ └── WCTMigrationInfo.mm │ │ ├── monitor/ │ │ │ ├── WCTDatabase+Monitor.h │ │ │ ├── WCTDatabase+Monitor.mm │ │ │ ├── WCTError+Private.h │ │ │ ├── WCTError.h │ │ │ ├── WCTError.mm │ │ │ ├── WCTPerformanceInfo+Private.h │ │ │ ├── WCTPerformanceInfo.h │ │ │ └── WCTPerformanceInfo.mm │ │ ├── orm/ │ │ │ ├── WCTORM.h │ │ │ ├── accessor/ │ │ │ │ ├── WCTBaseAccessor.h │ │ │ │ ├── WCTBaseAccessor.mm │ │ │ │ ├── WCTCppAccessor.h │ │ │ │ ├── WCTObjCAccessor.h │ │ │ │ ├── WCTObjCAccessor.mm │ │ │ │ ├── WCTRuntimeBaseAccessor.h │ │ │ │ ├── WCTRuntimeBaseAccessor.mm │ │ │ │ ├── WCTRuntimeCppAccessor.h │ │ │ │ ├── WCTRuntimeObjCAccessor.h │ │ │ │ └── WCTRuntimeObjCAccessor.mm │ │ │ ├── binding/ │ │ │ │ ├── WCTBinding.h │ │ │ │ ├── WCTBinding.mm │ │ │ │ ├── WCTColumnBinding.h │ │ │ │ └── WCTColumnBinding.mm │ │ │ ├── coding/ │ │ │ │ ├── WCTColumnCoding.h │ │ │ │ ├── WCTProperty.h │ │ │ │ ├── WCTProperty.mm │ │ │ │ ├── WCTResultColumn.h │ │ │ │ ├── WCTResultColumn.mm │ │ │ │ └── WCTTableCoding.h │ │ │ └── macro/ │ │ │ ├── WCTColumnConstraintMacro.h │ │ │ ├── WCTIndexMacro.h │ │ │ ├── WCTMacro.h │ │ │ ├── WCTMacroUtility.h │ │ │ ├── WCTPropertyMacro.h │ │ │ ├── WCTTableConstraintMacro.h │ │ │ └── WCTVirtualTableMacro.h │ │ ├── statement/ │ │ │ ├── WCTPreparedStatement+Private.h │ │ │ ├── WCTPreparedStatement.h │ │ │ └── WCTPreparedStatement.mm │ │ ├── table/ │ │ │ ├── WCTDatabase+Table.h │ │ │ ├── WCTDatabase+Table.mm │ │ │ ├── WCTHandle+Table.h │ │ │ ├── WCTHandle+Table.mm │ │ │ ├── WCTTable+Private.h │ │ │ ├── WCTTable+Table.h │ │ │ ├── WCTTable+Table.mm │ │ │ ├── WCTTable.h │ │ │ ├── WCTTable.mm │ │ │ └── WCTTableProtocol.h │ │ ├── tests/ │ │ │ ├── advance/ │ │ │ │ ├── chaincall/ │ │ │ │ │ ├── ChainCallTests.mm │ │ │ │ │ └── MultiSelectTests.mm │ │ │ │ ├── column_coding/ │ │ │ │ │ ├── ColumnCodingObject+WCTTableCoding.h │ │ │ │ │ ├── ColumnCodingObject.h │ │ │ │ │ ├── ColumnCodingObject.mm │ │ │ │ │ ├── ColumnCodingTests.mm │ │ │ │ │ ├── DataCodingObject+WCTColumnCoding.h │ │ │ │ │ ├── DataCodingObject+WCTColumnCoding.mm │ │ │ │ │ ├── DataCodingObject.h │ │ │ │ │ ├── DataCodingObject.m │ │ │ │ │ ├── DoubleCodingObject+WCTColumnCoding.h │ │ │ │ │ ├── DoubleCodingObject+WCTColumnCoding.mm │ │ │ │ │ ├── DoubleCodingObject.h │ │ │ │ │ ├── DoubleCodingObject.m │ │ │ │ │ ├── IntegerCodingObject+WCTColumnCoding.h │ │ │ │ │ ├── IntegerCodingObject+WCTColumnCoding.mm │ │ │ │ │ ├── IntegerCodingObject.h │ │ │ │ │ ├── IntegerCodingObject.m │ │ │ │ │ ├── Random+ColumnCodingObject.h │ │ │ │ │ ├── Random+ColumnCodingObject.mm │ │ │ │ │ ├── StringCodingObject+WCTColumnCoding.h │ │ │ │ │ ├── StringCodingObject+WCTColumnCoding.mm │ │ │ │ │ ├── StringCodingObject.h │ │ │ │ │ └── StringCodingObject.m │ │ │ │ └── handle/ │ │ │ │ └── HandleTests.mm │ │ │ ├── basic/ │ │ │ │ ├── FileTests.mm │ │ │ │ ├── ObservationTests.mm │ │ │ │ └── TableTests.mm │ │ │ ├── benchmark/ │ │ │ │ ├── BaselineBenchmark.mm │ │ │ │ ├── CipherBenchmark.mm │ │ │ │ ├── CompressionBenchmark.h │ │ │ │ ├── CompressionBenchmark.mm │ │ │ │ ├── DatabaseMigrationBenchmark.mm │ │ │ │ ├── DictCompressionBenchmark.mm │ │ │ │ ├── MigrationBenchmark.h │ │ │ │ ├── MigrationBenchmark.mm │ │ │ │ ├── NormalCompressionBenchmark.mm │ │ │ │ ├── ObjectsBasedBenchmark.h │ │ │ │ ├── ObjectsBasedBenchmark.mm │ │ │ │ ├── RetrieveBenchmark.mm │ │ │ │ ├── TableBenchmark.mm │ │ │ │ ├── TableMigrationBenchmark.mm │ │ │ │ └── VacuumBenchmark.mm │ │ │ ├── common/ │ │ │ │ ├── BaseTestCase.h │ │ │ │ ├── BaseTestCase.mm │ │ │ │ ├── Benchmark.h │ │ │ │ ├── Benchmark.mm │ │ │ │ ├── CRUDTestCase.h │ │ │ │ ├── CRUDTestCase.mm │ │ │ │ ├── DatabaseTestCase.h │ │ │ │ ├── DatabaseTestCase.mm │ │ │ │ ├── RobustyTestCase.h │ │ │ │ ├── RobustyTestCase.mm │ │ │ │ ├── TableTestCase.h │ │ │ │ ├── TableTestCase.mm │ │ │ │ ├── TestCase.h │ │ │ │ ├── factory/ │ │ │ │ │ ├── ObjectsBasedFactory.h │ │ │ │ │ ├── ObjectsBasedFactory.mm │ │ │ │ │ ├── PrototypeFactory.h │ │ │ │ │ ├── PrototypeFactory.mm │ │ │ │ │ ├── SizeBasedFactory.h │ │ │ │ │ ├── SizeBasedFactory.mm │ │ │ │ │ ├── TablesBasedFactory.h │ │ │ │ │ └── TablesBasedFactory.mm │ │ │ │ ├── object/ │ │ │ │ │ ├── AllTypesObject+WCTTableCoding.h │ │ │ │ │ ├── AllTypesObject.h │ │ │ │ │ ├── AllTypesObject.mm │ │ │ │ │ ├── TestCaseObject+WCTTableCoding.h │ │ │ │ │ ├── TestCaseObject.h │ │ │ │ │ └── TestCaseObject.mm │ │ │ │ ├── random/ │ │ │ │ │ ├── Random+TestCaseObject.h │ │ │ │ │ ├── Random+TestCaseObject.mm │ │ │ │ │ ├── Random+WCDB.h │ │ │ │ │ ├── Random+WCDB.mm │ │ │ │ │ ├── Random.h │ │ │ │ │ └── Random.mm │ │ │ │ └── utility/ │ │ │ │ ├── Dispatch.h │ │ │ │ ├── Dispatch.mm │ │ │ │ ├── NSObject+TestCase.h │ │ │ │ ├── NSObject+TestCase.mm │ │ │ │ ├── Signpost.h │ │ │ │ ├── Signpost.mm │ │ │ │ ├── TestCaseAssertion.h │ │ │ │ ├── TestCaseCounter.h │ │ │ │ ├── TestCaseCounter.mm │ │ │ │ ├── TestCaseLog.h │ │ │ │ ├── TestCaseLog.mm │ │ │ │ ├── TestCaseMacro.h │ │ │ │ ├── TestCaseResult.h │ │ │ │ ├── TestCaseResult.mm │ │ │ │ ├── WCTDatabase+TestCase.h │ │ │ │ └── WCTDatabase+TestCase.mm │ │ │ ├── compression/ │ │ │ │ ├── common/ │ │ │ │ │ ├── CompressionTestCase.h │ │ │ │ │ ├── CompressionTestCase.mm │ │ │ │ │ ├── CompressionTestObject.h │ │ │ │ │ ├── CompressionTestObject.mm │ │ │ │ │ ├── Random+CompressionTestObject.h │ │ │ │ │ └── Random+CompressionTestObject.mm │ │ │ │ └── compatible/ │ │ │ │ ├── CompressRobustyTests.mm │ │ │ │ ├── CompressingCRUDTest.mm │ │ │ │ └── CompressionTests.mm │ │ │ ├── config/ │ │ │ │ ├── ConfigTests.mm │ │ │ │ └── DatabaseTests.mm │ │ │ ├── convenient/ │ │ │ │ ├── ConvenientDeleteTests.mm │ │ │ │ ├── ConvenientInsertTests.mm │ │ │ │ ├── ConvenientSelectTests.mm │ │ │ │ └── ConvenientUpdateTests.mm │ │ │ ├── fts/ │ │ │ │ ├── FTS3Object+WCTTableCoding.h │ │ │ │ ├── FTS3Object.h │ │ │ │ ├── FTS3Object.mm │ │ │ │ ├── FTS3Tests.mm │ │ │ │ ├── FTS5Object.h │ │ │ │ ├── FTS5Object.mm │ │ │ │ └── FTS5Test.mm │ │ │ ├── host/ │ │ │ │ ├── Info.plist │ │ │ │ ├── host.xcconfig │ │ │ │ └── main.m │ │ │ ├── migration/ │ │ │ │ ├── common/ │ │ │ │ │ ├── MigrationCompatibleTestCase.mm │ │ │ │ │ ├── MigrationObject.mm │ │ │ │ │ ├── MigrationTestCase.h │ │ │ │ │ ├── MigrationTestCase.mm │ │ │ │ │ ├── MigrationTestObject.h │ │ │ │ │ ├── MigrationTestObjectBase.h │ │ │ │ │ ├── MigrationTestObjectBase.mm │ │ │ │ │ ├── MigrationTestSourceObject.h │ │ │ │ │ ├── Random+MigrationTestObject.h │ │ │ │ │ └── Random+MigrationTestObject.mm │ │ │ │ ├── compatible/ │ │ │ │ │ ├── CipherMigrationTests.mm │ │ │ │ │ ├── MigrateTests.mm │ │ │ │ │ └── MigratingCRUDTests.mm │ │ │ │ ├── increment/ │ │ │ │ │ ├── AutoIncrementDatabaseMigratingCompatibleTests.mm │ │ │ │ │ ├── AutoIncrementDatabaseMigrationCompatibleTests.mm │ │ │ │ │ ├── AutoIncrementTableMigratingCompatibleTests.mm │ │ │ │ │ └── AutoIncrementTableMigrationCompatibleTests.mm │ │ │ │ ├── model/ │ │ │ │ │ ├── AutoIncrementMigrationObject.h │ │ │ │ │ ├── AutoIncrementMigrationObject.mm │ │ │ │ │ ├── AutoIncrementMigrationSourceObject.h │ │ │ │ │ ├── AutoIncrementMigrationSourceObject.mm │ │ │ │ │ ├── IntegerPrimaryKeyMigrationObject.h │ │ │ │ │ ├── IntegerPrimaryKeyMigrationObject.mm │ │ │ │ │ ├── IntegerPrimaryKeyMigrationSourceObject.h │ │ │ │ │ ├── IntegerPrimaryKeyMigrationSourceObject.mm │ │ │ │ │ ├── NormalMigrationObject.h │ │ │ │ │ ├── NormalMigrationObject.mm │ │ │ │ │ ├── NormalMigrationSourceObject.h │ │ │ │ │ └── NormalMigrationSourceObject.mm │ │ │ │ ├── normal/ │ │ │ │ │ ├── CipherDatabaseMigratingCompatibleTests.mm │ │ │ │ │ └── CipherDatabaseMigrationCompatibleTests.mm │ │ │ │ └── primary/ │ │ │ │ ├── PrimaryKeyDatabaseMigratingCompatibleTests.mm │ │ │ │ ├── PrimaryKeyDatabaseMigrationCompatibleTests.mm │ │ │ │ ├── PrimaryKeyTableMigratingCompatibleTests.mm │ │ │ │ └── PrimaryKeyTableMigrationCompatibleTests.mm │ │ │ ├── monitor/ │ │ │ │ ├── TraceTests.mm │ │ │ │ └── VersionTests.mm │ │ │ ├── orm/ │ │ │ │ ├── ORMTests.mm │ │ │ │ ├── addtional/ │ │ │ │ │ ├── AdditionalORMObject+WCTTableCoding.h │ │ │ │ │ ├── AdditionalORMObject.h │ │ │ │ │ └── AdditionalORMObject.mm │ │ │ │ ├── column_constraint/ │ │ │ │ │ ├── ColumnConstraintAutoIncrement+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintAutoIncrement.h │ │ │ │ │ ├── ColumnConstraintAutoIncrement.mm │ │ │ │ │ ├── ColumnConstraintAutoIncrementAsc+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintAutoIncrementAsc.h │ │ │ │ │ ├── ColumnConstraintAutoIncrementAsc.mm │ │ │ │ │ ├── ColumnConstraintCheck+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintCheck.h │ │ │ │ │ ├── ColumnConstraintCheck.mm │ │ │ │ │ ├── ColumnConstraintDefault+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintDefault.h │ │ │ │ │ ├── ColumnConstraintDefault.mm │ │ │ │ │ ├── ColumnConstraintEnablePrimaryAutoIncrement+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintEnablePrimaryAutoIncrement.h │ │ │ │ │ ├── ColumnConstraintEnablePrimaryAutoIncrement.mm │ │ │ │ │ ├── ColumnConstraintNotNull+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintNotNull.h │ │ │ │ │ ├── ColumnConstraintNotNull.mm │ │ │ │ │ ├── ColumnConstraintPrimary+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintPrimary.h │ │ │ │ │ ├── ColumnConstraintPrimary.mm │ │ │ │ │ ├── ColumnConstraintPrimaryAsc+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintPrimaryAsc.h │ │ │ │ │ ├── ColumnConstraintPrimaryAsc.mm │ │ │ │ │ ├── ColumnConstraintPrimaryDesc+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintPrimaryDesc.h │ │ │ │ │ ├── ColumnConstraintPrimaryDesc.mm │ │ │ │ │ ├── ColumnConstraintUnique+WCTTableCoding.h │ │ │ │ │ ├── ColumnConstraintUnique.h │ │ │ │ │ └── ColumnConstraintUnique.mm │ │ │ │ ├── index/ │ │ │ │ │ ├── IndexObject+WCTTableCoding.h │ │ │ │ │ ├── IndexObject.h │ │ │ │ │ └── IndexObject.mm │ │ │ │ ├── property/ │ │ │ │ │ ├── NewPropertyObject.h │ │ │ │ │ ├── NewPropertyObject.mm │ │ │ │ │ ├── PropertyObject+WCTTableCoding.h │ │ │ │ │ ├── PropertyObject.h │ │ │ │ │ └── PropertyObject.mm │ │ │ │ ├── rebind/ │ │ │ │ │ ├── DropIndexObject+WCTTableCoding.h │ │ │ │ │ ├── DropIndexObject.h │ │ │ │ │ ├── DropIndexObject.mm │ │ │ │ │ ├── NewRemapObject+WCTTableCoding.h │ │ │ │ │ ├── NewRemapObject.h │ │ │ │ │ ├── NewRemapObject.mm │ │ │ │ │ ├── NewlyCreatedTableIndexObject+WCTTableCoding.h │ │ │ │ │ ├── NewlyCreatedTableIndexObject.h │ │ │ │ │ ├── NewlyCreatedTableIndexObject.mm │ │ │ │ │ ├── OldRemapObject+WCTTableCoding.h │ │ │ │ │ ├── OldRemapObject.h │ │ │ │ │ └── OldRemapObject.mm │ │ │ │ ├── table_constraint/ │ │ │ │ │ ├── TableConstraintObject+WCTTableCoding.h │ │ │ │ │ ├── TableConstraintObject.h │ │ │ │ │ └── TableConstraintObject.mm │ │ │ │ └── virtual_table/ │ │ │ │ ├── VirtualTableFTS4Object+WCTTableCoding.h │ │ │ │ ├── VirtualTableFTS4Object.h │ │ │ │ ├── VirtualTableFTS4Object.mm │ │ │ │ ├── VirtualTableFTS5Object+WCTTableCoding.h │ │ │ │ ├── VirtualTableFTS5Object.h │ │ │ │ └── VirtualTableFTS5Object.mm │ │ │ ├── repair/ │ │ │ │ ├── BackupTests.mm │ │ │ │ ├── DepositTests.mm │ │ │ │ ├── RetrieveRobustyTests.mm │ │ │ │ ├── RetrieveTests.mm │ │ │ │ ├── VacuumRobustyTests.mm │ │ │ │ ├── VacuumTests.mm │ │ │ │ ├── common/ │ │ │ │ │ ├── BackupTestCase.h │ │ │ │ │ ├── BackupTestCase.mm │ │ │ │ │ ├── Random+RepairTestObject.h │ │ │ │ │ ├── Random+RepairTestObject.mm │ │ │ │ │ ├── RepairTestObject.h │ │ │ │ │ ├── RepairTestObjectBase.h │ │ │ │ │ └── RepairTestObjectBase.mm │ │ │ │ └── model/ │ │ │ │ ├── AutoIncrementRepairTestObject.h │ │ │ │ ├── AutoIncrementRepairTestObject.mm │ │ │ │ ├── NormalRepairTestObject.h │ │ │ │ ├── NormalRepairTestObject.mm │ │ │ │ ├── WithoutRowidRepairTestObject.h │ │ │ │ └── WithoutRowidRepairTestObject.mm │ │ │ ├── thread/ │ │ │ │ ├── ThreadTests.mm │ │ │ │ └── TransactionTests.mm │ │ │ └── winq/ │ │ │ ├── AggregateFunctionTests.mm │ │ │ ├── BindParameterTests.mm │ │ │ ├── ColumnConstraintTests.mm │ │ │ ├── ColumnDefTests.mm │ │ │ ├── ColumnOperableTests.mm │ │ │ ├── ColumnTests.mm │ │ │ ├── ColumnTypeTests.mm │ │ │ ├── CommonTableExpressionTests.mm │ │ │ ├── ConflictTests.mm │ │ │ ├── CoreFunctionTests.mm │ │ │ ├── ExpressionOperableTests.mm │ │ │ ├── ExpressionTests.mm │ │ │ ├── FTSFunctionTests.mm │ │ │ ├── FilterTests.mm │ │ │ ├── ForeignKeyTests.mm │ │ │ ├── FrameSpecTests.mm │ │ │ ├── IndexedColumnTests.mm │ │ │ ├── JoinConstraintTests.mm │ │ │ ├── JoinTests.mm │ │ │ ├── LiteralValueTests.mm │ │ │ ├── OrderTests.mm │ │ │ ├── OrderingTermTests.mm │ │ │ ├── PragmaTests.mm │ │ │ ├── QualifiedTableTests.mm │ │ │ ├── RaiseFunctionTests.mm │ │ │ ├── ResultColumnTests.mm │ │ │ ├── SchemaTests.mm │ │ │ ├── StatementAlterTableTests.mm │ │ │ ├── StatementAnalyzeTests.mm │ │ │ ├── StatementAttachTests.mm │ │ │ ├── StatementBeginTests.mm │ │ │ ├── StatementCommitTests.mm │ │ │ ├── StatementCreateIndexTests.mm │ │ │ ├── StatementCreateTableTests.mm │ │ │ ├── StatementCreateTriggerTests.mm │ │ │ ├── StatementCreateViewTests.mm │ │ │ ├── StatementCreateVirtualTableTests.mm │ │ │ ├── StatementDeleteTests.mm │ │ │ ├── StatementDetachTests.mm │ │ │ ├── StatementDropIndexTests.mm │ │ │ ├── StatementDropTableTests.mm │ │ │ ├── StatementDropTriggerTests.mm │ │ │ ├── StatementDropViewTests.mm │ │ │ ├── StatementExplainTests.mm │ │ │ ├── StatementInsertTests.mm │ │ │ ├── StatementPragmaTests.mm │ │ │ ├── StatementReindexTests.mm │ │ │ ├── StatementReleaseTests.mm │ │ │ ├── StatementRollbackTests.mm │ │ │ ├── StatementSavepointTests.mm │ │ │ ├── StatementSelectTests.mm │ │ │ ├── StatementTests.mm │ │ │ ├── StatementUpdateTests.mm │ │ │ ├── StatementVacuumTests.mm │ │ │ ├── StoppableIterationTests.mm │ │ │ ├── SyntaxListTests.mm │ │ │ ├── TableConstraintTests.mm │ │ │ ├── TableOrSubqueryTests.mm │ │ │ ├── UpsertTests.mm │ │ │ ├── ValueTests.mm │ │ │ ├── WCTPropertyTests.mm │ │ │ ├── WCTResultColumnTests.mm │ │ │ ├── WINQAssertion.h │ │ │ ├── WINQAssertion.mm │ │ │ └── WindowDefTests.mm │ │ └── transaction/ │ │ ├── WCTDatabase+Transaction.h │ │ ├── WCTDatabase+Transaction.mm │ │ ├── WCTHandle+Transaction.h │ │ ├── WCTHandle+Transaction.mm │ │ └── WCTTransaction.h │ ├── support/ │ │ ├── Base.xcconfig │ │ ├── Debug.xcconfig │ │ ├── Info.plist │ │ ├── Release.xcconfig │ │ ├── Tests.xcconfig │ │ ├── WCDB.modulemap │ │ ├── WCDB.xcconfig │ │ ├── WCDBCpp.modulemap │ │ ├── WCDBObjc.modulemap │ │ ├── WCDBSwift.modulemap │ │ ├── WCDBSwift.xcconfig │ │ ├── WCDBWithoutCompression.xcconfig │ │ ├── ZstdBase.xcconfig │ │ ├── ZstdDebug.xcconfig │ │ └── ZstdRelease.xcconfig │ ├── swift/ │ │ ├── bridge/ │ │ │ ├── ErrorBridge.swift │ │ │ ├── FTSBridge.swift │ │ │ ├── ObjectBridge.swift │ │ │ └── WCTBridgeProperty.swift │ │ ├── builtin/ │ │ │ ├── CodableType.swift │ │ │ └── Master.swift │ │ ├── core/ │ │ │ ├── base/ │ │ │ │ ├── BaseType.swift │ │ │ │ ├── Database+WCTTableCoding.swift │ │ │ │ ├── Database.swift │ │ │ │ ├── Handle+WCTTableCoding.swift │ │ │ │ ├── Handle.swift │ │ │ │ ├── HandleStatement+WCTTableCoding.swift │ │ │ │ ├── PreparedStatement.swift │ │ │ │ ├── Table+WCTTableCoding.swift │ │ │ │ └── Table.swift │ │ │ ├── binding/ │ │ │ │ ├── CheckExpressionConfig.swift │ │ │ │ ├── ColumnConstraintConfig.swift │ │ │ │ ├── ForeignKeyConfig.swift │ │ │ │ ├── IndexConfig.swift │ │ │ │ ├── MultiPrimaryConfig.swift │ │ │ │ ├── MultiUniqueConfig.swift │ │ │ │ ├── Property.swift │ │ │ │ ├── Redirectable.swift │ │ │ │ ├── TableBinding.swift │ │ │ │ ├── TableConfiguration.swift │ │ │ │ └── VirtualTableConfig.swift │ │ │ ├── chaincall/ │ │ │ │ ├── ChainCall+WCTTableCoding.swift │ │ │ │ ├── ChainCall.swift │ │ │ │ ├── Declare.swift │ │ │ │ ├── Delete.swift │ │ │ │ ├── Insert+WCTTableCoding.swift │ │ │ │ ├── Insert.swift │ │ │ │ ├── MultiSelect.swift │ │ │ │ ├── RowSelect.swift │ │ │ │ ├── Select+WCTTableCoding.swift │ │ │ │ ├── Select.swift │ │ │ │ ├── Selectable.swift │ │ │ │ ├── TableChainCall+WCTTableCoding.swift │ │ │ │ ├── TableChainCall.swift │ │ │ │ ├── Update+WCTTableCoding.swift │ │ │ │ └── Update.swift │ │ │ ├── codable/ │ │ │ │ ├── CodingTableKey.swift │ │ │ │ ├── ColumnCodable.swift │ │ │ │ ├── ColumnTypeDecoder.swift │ │ │ │ ├── TableCodable.swift │ │ │ │ ├── TableDecoder.swift │ │ │ │ └── TableEncoder.swift │ │ │ └── interface/ │ │ │ ├── DeleteInterface.swift │ │ │ ├── InsertInterface+WCTTableCoding.swift │ │ │ ├── InsertInterface.swift │ │ │ ├── SelectInterface+WCTTableCoding.swift │ │ │ ├── SelectInterface.swift │ │ │ ├── StatementInterface+WCTTableCoding.swift │ │ │ ├── StatementInterface.swift │ │ │ ├── StatementSelectInterface.swift │ │ │ ├── TableCRUDInterface+WCTTableCoding.swift │ │ │ ├── TableCRUDInterface.swift │ │ │ ├── TableInterface+WCTTableCoding.swift │ │ │ ├── TableInterface.swift │ │ │ ├── TransactionInterface.swift │ │ │ ├── UpdateInterface+WCTTableCoding.swift │ │ │ └── UpdateInterface.swift │ │ ├── tests/ │ │ │ ├── benchmark/ │ │ │ │ ├── baseline/ │ │ │ │ │ ├── BaselineBatchWriteBenchmark.swift │ │ │ │ │ ├── BaselineReadBenchmark.swift │ │ │ │ │ └── BaselineWriteBenchmark.swift │ │ │ │ ├── cipher/ │ │ │ │ │ ├── CipherReadBenchmark.swift │ │ │ │ │ └── CipherWriteBenchmark.swift │ │ │ │ ├── multithread/ │ │ │ │ │ ├── BaseMultithreadBenchmark.swift │ │ │ │ │ ├── MultithreadReadReadBenchmark.swift │ │ │ │ │ ├── MultithreadReadWriteBenchmark.swift │ │ │ │ │ └── MultithreadWriteWriteBenchmark.swift │ │ │ │ ├── other/ │ │ │ │ │ ├── InitializationBenchmark.swift │ │ │ │ │ └── SyncWriteBenchmark.swift │ │ │ │ └── supporting/ │ │ │ │ ├── BaseBenchmark.swift │ │ │ │ ├── BenchmarkObject.swift │ │ │ │ └── Config.swift │ │ │ ├── common/ │ │ │ │ ├── Assert.swift │ │ │ │ ├── BaseTestCase.swift │ │ │ │ ├── Convenience.swift │ │ │ │ ├── DatabaseTestCase.swift │ │ │ │ ├── Random.swift │ │ │ │ ├── RandomData.swift │ │ │ │ └── TestObject.swift │ │ │ ├── crud/ │ │ │ │ ├── AdvanceCRUDTests.swift │ │ │ │ ├── AdvanceTests.swift │ │ │ │ ├── CRUDTestCase.swift │ │ │ │ ├── DatabaseTests.swift │ │ │ │ ├── DeleteInterfaceTests.swift │ │ │ │ ├── DeleteTests.swift │ │ │ │ ├── InsertInterfaceTests.swift │ │ │ │ ├── InsertTests.swift │ │ │ │ ├── MultiSelectTests.swift │ │ │ │ ├── MultithreadTests.swift │ │ │ │ ├── RowSelectTests.swift │ │ │ │ ├── SelectInterfaceTests.swift │ │ │ │ ├── SelectTests.swift │ │ │ │ ├── TableTests.swift │ │ │ │ ├── TypedTests.swift │ │ │ │ ├── UpdateInterfaceTests.swift │ │ │ │ └── UpdateTests.swift │ │ │ ├── orm/ │ │ │ │ ├── AutoAddColumnTests.swift │ │ │ │ ├── ColumnConstraintBindingTests.swift │ │ │ │ ├── IndexBindingTests.swift │ │ │ │ ├── ORMTestCase.swift │ │ │ │ ├── TableConstraintBindingTests.swift │ │ │ │ └── VirtualTableBindingTests.swift │ │ │ ├── other/ │ │ │ │ ├── FileTests.swift │ │ │ │ ├── HandleTest.swift │ │ │ │ ├── RepairTests.swift │ │ │ │ ├── TokenizerTests.swift │ │ │ │ └── TracerTests.swift │ │ │ └── winq/ │ │ │ ├── identifier/ │ │ │ │ ├── BindParameterTests.swift │ │ │ │ ├── ColumnConstraintTests.swift │ │ │ │ ├── ColumnDefTests.swift │ │ │ │ ├── ColumnTests.swift │ │ │ │ ├── ColumnTypeTests.swift │ │ │ │ ├── CommonTableExpressionTests.swift │ │ │ │ ├── ExpressionTests.swift │ │ │ │ ├── ForeignKeyTests.swift │ │ │ │ ├── FrameSpecTests.swift │ │ │ │ ├── IndexedColumnTests.swift │ │ │ │ ├── JoinTests.swift │ │ │ │ ├── LiteralValueTests.swift │ │ │ │ ├── OrderingTermTests.swift │ │ │ │ ├── QualifiedTableTests.swift │ │ │ │ ├── RaiseFunctionTests.swift │ │ │ │ ├── ResultColumnTests.swift │ │ │ │ ├── SchemaTests.swift │ │ │ │ ├── TableConstraintTests.swift │ │ │ │ ├── TableOrSubqueryTests.swift │ │ │ │ ├── UpsertTests.swift │ │ │ │ └── WindowDefTests.swift │ │ │ └── statement/ │ │ │ ├── StatementAlterTableTests.swift │ │ │ ├── StatementAnalyzeTests.swift │ │ │ ├── StatementAttachTests.swift │ │ │ ├── StatementBeginTests.swift │ │ │ ├── StatementCommitTests.swift │ │ │ ├── StatementCreateIndexTests.swift │ │ │ ├── StatementCreateTableTests.swift │ │ │ ├── StatementCreateTriggerTests.swift │ │ │ ├── StatementCreateViewTests.swift │ │ │ ├── StatementCreateVirtualTableTests.swift │ │ │ ├── StatementDeleteTests.swift │ │ │ ├── StatementDetachTests.swift │ │ │ ├── StatementDropIndexTests.swift │ │ │ ├── StatementDropTableTests.swift │ │ │ ├── StatementDropTriggerTests.swift │ │ │ ├── StatementDropViewTests.swift │ │ │ ├── StatementExplainTests.swift │ │ │ ├── StatementInsertTests.swift │ │ │ ├── StatementPragmaTests.swift │ │ │ ├── StatementReindexTests.swift │ │ │ ├── StatementReleaseTests.swift │ │ │ ├── StatementRollbackTests.swift │ │ │ ├── StatementSavepointTests.swift │ │ │ ├── StatementSelectTests.swift │ │ │ ├── StatementUpdateTests.swift │ │ │ └── StatementVacuumTests.swift │ │ ├── util/ │ │ │ ├── Convenience.swift │ │ │ ├── Lock.swift │ │ │ ├── Optional.swift │ │ │ ├── Recyclable.swift │ │ │ └── WCDBError.swift │ │ └── winq/ │ │ ├── Convertible.swift │ │ ├── Identifier.swift │ │ ├── Statement.swift │ │ ├── SyntaxConst.swift │ │ ├── Value.swift │ │ ├── identifier/ │ │ │ ├── BindParameter.swift │ │ │ ├── Column.swift │ │ │ ├── ColumnConstraint.swift │ │ │ ├── ColumnDef.swift │ │ │ ├── CommonTableExpression.swift │ │ │ ├── Expression.swift │ │ │ ├── ForeignKey.swift │ │ │ ├── FrameSpec.swift │ │ │ ├── IndexedColumn.swift │ │ │ ├── Join.swift │ │ │ ├── LiteralValue.swift │ │ │ ├── Operable.swift │ │ │ ├── OrderingTerm.swift │ │ │ ├── Pragma.swift │ │ │ ├── QualifiedTable.swift │ │ │ ├── RaiseFunction.swift │ │ │ ├── ResultColumn.swift │ │ │ ├── Schema.swift │ │ │ ├── TableConstraint.swift │ │ │ ├── TableOrSubquery.swift │ │ │ ├── Upsert.swift │ │ │ └── WindowDef.swift │ │ └── statement/ │ │ ├── StatementAlterTable.swift │ │ ├── StatementAnalyze.swift │ │ ├── StatementAttach.swift │ │ ├── StatementBegin.swift │ │ ├── StatementCommit.swift │ │ ├── StatementCreateIndex.swift │ │ ├── StatementCreateTable.swift │ │ ├── StatementCreateTrigger.swift │ │ ├── StatementCreateView.swift │ │ ├── StatementCreateVirtualTable.swift │ │ ├── StatementDelete.swift │ │ ├── StatementDetach.swift │ │ ├── StatementDropIndex.swift │ │ ├── StatementDropTable.swift │ │ ├── StatementDropTrigger.swift │ │ ├── StatementDropView.swift │ │ ├── StatementExplain.swift │ │ ├── StatementInsert.swift │ │ ├── StatementPragma.swift │ │ ├── StatementReindex.swift │ │ ├── StatementRelease.swift │ │ ├── StatementRollback.swift │ │ ├── StatementSavepoint.swift │ │ ├── StatementSelect.swift │ │ ├── StatementUpdate.swift │ │ └── StatementVacuum.swift │ ├── utility.cmake │ ├── zstd.cmake │ └── zstd.xcodeproj/ │ └── project.pbxproj └── tools/ ├── GetHeaderSearchPath.py ├── build-depends-android.sh ├── createHeaderLink.sh ├── dbbackup.c ├── dbrepair.c ├── docs/ │ ├── docs.sh │ └── objc/ │ └── settings.plist ├── format/ │ ├── code.sh │ └── main.sh ├── git/ │ ├── hook.sh │ ├── pre-commit │ └── prepare-commit-msg ├── patch/ │ └── openssl/ │ ├── 0001-Workaround-CPU-detection-on-x86-machines-using-libho.patch │ ├── 0002-Clean-generated-asm-sources-on-clean-targets.patch │ └── 0003-Fix-armv4-clang-build.patch ├── prebuild/ │ ├── openssl/ │ │ ├── android/ │ │ │ ├── arm64-v8a/ │ │ │ │ └── libcrypto.a │ │ │ ├── armeabi-v7a/ │ │ │ │ └── libcrypto.a │ │ │ ├── x86/ │ │ │ │ └── libcrypto.a │ │ │ └── x86_64/ │ │ │ └── libcrypto.a │ │ ├── android_old/ │ │ │ ├── arm/ │ │ │ │ ├── include/ │ │ │ │ │ └── openssl/ │ │ │ │ │ ├── aes.h │ │ │ │ │ ├── asn1.h │ │ │ │ │ ├── asn1_mac.h │ │ │ │ │ ├── asn1t.h │ │ │ │ │ ├── bio.h │ │ │ │ │ ├── blowfish.h │ │ │ │ │ ├── bn.h │ │ │ │ │ ├── buffer.h │ │ │ │ │ ├── camellia.h │ │ │ │ │ ├── cast.h │ │ │ │ │ ├── cmac.h │ │ │ │ │ ├── cms.h │ │ │ │ │ ├── conf.h │ │ │ │ │ ├── conf_api.h │ │ │ │ │ ├── crypto.h │ │ │ │ │ ├── des.h │ │ │ │ │ ├── des_old.h │ │ │ │ │ ├── dh.h │ │ │ │ │ ├── dsa.h │ │ │ │ │ ├── dso.h │ │ │ │ │ ├── dtls1.h │ │ │ │ │ ├── e_os2.h │ │ │ │ │ ├── ebcdic.h │ │ │ │ │ ├── ec.h │ │ │ │ │ ├── ecdh.h │ │ │ │ │ ├── ecdsa.h │ │ │ │ │ ├── err.h │ │ │ │ │ ├── evp.h │ │ │ │ │ ├── hmac.h │ │ │ │ │ ├── idea.h │ │ │ │ │ ├── krb5_asn.h │ │ │ │ │ ├── kssl.h │ │ │ │ │ ├── lhash.h │ │ │ │ │ ├── md4.h │ │ │ │ │ ├── md5.h │ │ │ │ │ ├── mdc2.h │ │ │ │ │ ├── modes.h │ │ │ │ │ ├── obj_mac.h │ │ │ │ │ ├── objects.h │ │ │ │ │ ├── ocsp.h │ │ │ │ │ ├── opensslconf.h │ │ │ │ │ ├── opensslv.h │ │ │ │ │ ├── ossl_typ.h │ │ │ │ │ ├── pem.h │ │ │ │ │ ├── pem2.h │ │ │ │ │ ├── pkcs12.h │ │ │ │ │ ├── pkcs7.h │ │ │ │ │ ├── pqueue.h │ │ │ │ │ ├── rand.h │ │ │ │ │ ├── rc2.h │ │ │ │ │ ├── rc4.h │ │ │ │ │ ├── ripemd.h │ │ │ │ │ ├── rsa.h │ │ │ │ │ ├── safestack.h │ │ │ │ │ ├── seed.h │ │ │ │ │ ├── sha.h │ │ │ │ │ ├── srp.h │ │ │ │ │ ├── srtp.h │ │ │ │ │ ├── ssl.h │ │ │ │ │ ├── ssl2.h │ │ │ │ │ ├── ssl23.h │ │ │ │ │ ├── ssl3.h │ │ │ │ │ ├── stack.h │ │ │ │ │ ├── symhacks.h │ │ │ │ │ ├── tls1.h │ │ │ │ │ ├── ts.h │ │ │ │ │ ├── txt_db.h │ │ │ │ │ ├── ui.h │ │ │ │ │ ├── ui_compat.h │ │ │ │ │ ├── whrlpool.h │ │ │ │ │ ├── x509.h │ │ │ │ │ ├── x509_vfy.h │ │ │ │ │ └── x509v3.h │ │ │ │ └── lib/ │ │ │ │ └── libcrypto.a │ │ │ ├── arm64/ │ │ │ │ ├── include/ │ │ │ │ │ └── openssl/ │ │ │ │ │ ├── aes.h │ │ │ │ │ ├── asn1.h │ │ │ │ │ ├── asn1_mac.h │ │ │ │ │ ├── asn1t.h │ │ │ │ │ ├── bio.h │ │ │ │ │ ├── blowfish.h │ │ │ │ │ ├── bn.h │ │ │ │ │ ├── buffer.h │ │ │ │ │ ├── camellia.h │ │ │ │ │ ├── cast.h │ │ │ │ │ ├── cmac.h │ │ │ │ │ ├── cms.h │ │ │ │ │ ├── conf.h │ │ │ │ │ ├── conf_api.h │ │ │ │ │ ├── crypto.h │ │ │ │ │ ├── des.h │ │ │ │ │ ├── des_old.h │ │ │ │ │ ├── dh.h │ │ │ │ │ ├── dsa.h │ │ │ │ │ ├── dso.h │ │ │ │ │ ├── dtls1.h │ │ │ │ │ ├── e_os2.h │ │ │ │ │ ├── ebcdic.h │ │ │ │ │ ├── ec.h │ │ │ │ │ ├── ecdh.h │ │ │ │ │ ├── ecdsa.h │ │ │ │ │ ├── err.h │ │ │ │ │ ├── evp.h │ │ │ │ │ ├── hmac.h │ │ │ │ │ ├── idea.h │ │ │ │ │ ├── krb5_asn.h │ │ │ │ │ ├── kssl.h │ │ │ │ │ ├── lhash.h │ │ │ │ │ ├── md4.h │ │ │ │ │ ├── md5.h │ │ │ │ │ ├── mdc2.h │ │ │ │ │ ├── modes.h │ │ │ │ │ ├── obj_mac.h │ │ │ │ │ ├── objects.h │ │ │ │ │ ├── ocsp.h │ │ │ │ │ ├── opensslconf.h │ │ │ │ │ ├── opensslv.h │ │ │ │ │ ├── ossl_typ.h │ │ │ │ │ ├── pem.h │ │ │ │ │ ├── pem2.h │ │ │ │ │ ├── pkcs12.h │ │ │ │ │ ├── pkcs7.h │ │ │ │ │ ├── pqueue.h │ │ │ │ │ ├── rand.h │ │ │ │ │ ├── rc2.h │ │ │ │ │ ├── rc4.h │ │ │ │ │ ├── ripemd.h │ │ │ │ │ ├── rsa.h │ │ │ │ │ ├── safestack.h │ │ │ │ │ ├── seed.h │ │ │ │ │ ├── sha.h │ │ │ │ │ ├── srp.h │ │ │ │ │ ├── srtp.h │ │ │ │ │ ├── ssl.h │ │ │ │ │ ├── ssl2.h │ │ │ │ │ ├── ssl23.h │ │ │ │ │ ├── ssl3.h │ │ │ │ │ ├── stack.h │ │ │ │ │ ├── symhacks.h │ │ │ │ │ ├── tls1.h │ │ │ │ │ ├── ts.h │ │ │ │ │ ├── txt_db.h │ │ │ │ │ ├── ui.h │ │ │ │ │ ├── ui_compat.h │ │ │ │ │ ├── whrlpool.h │ │ │ │ │ ├── x509.h │ │ │ │ │ ├── x509_vfy.h │ │ │ │ │ └── x509v3.h │ │ │ │ └── lib/ │ │ │ │ └── libcrypto.a │ │ │ ├── x86/ │ │ │ │ ├── include/ │ │ │ │ │ └── openssl/ │ │ │ │ │ ├── aes.h │ │ │ │ │ ├── asn1.h │ │ │ │ │ ├── asn1_mac.h │ │ │ │ │ ├── asn1t.h │ │ │ │ │ ├── bio.h │ │ │ │ │ ├── blowfish.h │ │ │ │ │ ├── bn.h │ │ │ │ │ ├── buffer.h │ │ │ │ │ ├── camellia.h │ │ │ │ │ ├── cast.h │ │ │ │ │ ├── cmac.h │ │ │ │ │ ├── cms.h │ │ │ │ │ ├── conf.h │ │ │ │ │ ├── conf_api.h │ │ │ │ │ ├── crypto.h │ │ │ │ │ ├── des.h │ │ │ │ │ ├── des_old.h │ │ │ │ │ ├── dh.h │ │ │ │ │ ├── dsa.h │ │ │ │ │ ├── dso.h │ │ │ │ │ ├── dtls1.h │ │ │ │ │ ├── e_os2.h │ │ │ │ │ ├── ebcdic.h │ │ │ │ │ ├── ec.h │ │ │ │ │ ├── ecdh.h │ │ │ │ │ ├── ecdsa.h │ │ │ │ │ ├── err.h │ │ │ │ │ ├── evp.h │ │ │ │ │ ├── hmac.h │ │ │ │ │ ├── idea.h │ │ │ │ │ ├── krb5_asn.h │ │ │ │ │ ├── kssl.h │ │ │ │ │ ├── lhash.h │ │ │ │ │ ├── md4.h │ │ │ │ │ ├── md5.h │ │ │ │ │ ├── mdc2.h │ │ │ │ │ ├── modes.h │ │ │ │ │ ├── obj_mac.h │ │ │ │ │ ├── objects.h │ │ │ │ │ ├── ocsp.h │ │ │ │ │ ├── opensslconf.h │ │ │ │ │ ├── opensslv.h │ │ │ │ │ ├── ossl_typ.h │ │ │ │ │ ├── pem.h │ │ │ │ │ ├── pem2.h │ │ │ │ │ ├── pkcs12.h │ │ │ │ │ ├── pkcs7.h │ │ │ │ │ ├── pqueue.h │ │ │ │ │ ├── rand.h │ │ │ │ │ ├── rc4.h │ │ │ │ │ ├── ripemd.h │ │ │ │ │ ├── rsa.h │ │ │ │ │ ├── safestack.h │ │ │ │ │ ├── seed.h │ │ │ │ │ ├── sha.h │ │ │ │ │ ├── srp.h │ │ │ │ │ ├── srtp.h │ │ │ │ │ ├── ssl.h │ │ │ │ │ ├── ssl2.h │ │ │ │ │ ├── ssl23.h │ │ │ │ │ ├── ssl3.h │ │ │ │ │ ├── stack.h │ │ │ │ │ ├── symhacks.h │ │ │ │ │ ├── tls1.h │ │ │ │ │ ├── ts.h │ │ │ │ │ ├── txt_db.h │ │ │ │ │ ├── ui.h │ │ │ │ │ ├── ui_compat.h │ │ │ │ │ ├── whrlpool.h │ │ │ │ │ ├── x509.h │ │ │ │ │ ├── x509_vfy.h │ │ │ │ │ └── x509v3.h │ │ │ │ └── lib/ │ │ │ │ └── libcrypto.a │ │ │ └── x86_64/ │ │ │ ├── include/ │ │ │ │ └── openssl/ │ │ │ │ ├── aes.h │ │ │ │ ├── asn1.h │ │ │ │ ├── asn1_mac.h │ │ │ │ ├── asn1t.h │ │ │ │ ├── bio.h │ │ │ │ ├── blowfish.h │ │ │ │ ├── bn.h │ │ │ │ ├── buffer.h │ │ │ │ ├── camellia.h │ │ │ │ ├── cmac.h │ │ │ │ ├── cms.h │ │ │ │ ├── conf.h │ │ │ │ ├── conf_api.h │ │ │ │ ├── crypto.h │ │ │ │ ├── des.h │ │ │ │ ├── des_old.h │ │ │ │ ├── dso.h │ │ │ │ ├── e_os2.h │ │ │ │ ├── ebcdic.h │ │ │ │ ├── err.h │ │ │ │ ├── evp.h │ │ │ │ ├── hmac.h │ │ │ │ ├── idea.h │ │ │ │ ├── krb5_asn.h │ │ │ │ ├── lhash.h │ │ │ │ ├── modes.h │ │ │ │ ├── obj_mac.h │ │ │ │ ├── objects.h │ │ │ │ ├── ocsp.h │ │ │ │ ├── opensslconf.h │ │ │ │ ├── opensslv.h │ │ │ │ ├── ossl_typ.h │ │ │ │ ├── pem.h │ │ │ │ ├── pem2.h │ │ │ │ ├── pkcs12.h │ │ │ │ ├── pkcs7.h │ │ │ │ ├── pqueue.h │ │ │ │ ├── rand.h │ │ │ │ ├── rc4.h │ │ │ │ ├── safestack.h │ │ │ │ ├── seed.h │ │ │ │ ├── sha.h │ │ │ │ ├── srp.h │ │ │ │ ├── stack.h │ │ │ │ ├── symhacks.h │ │ │ │ ├── ts.h │ │ │ │ ├── txt_db.h │ │ │ │ ├── ui.h │ │ │ │ ├── ui_compat.h │ │ │ │ ├── whrlpool.h │ │ │ │ ├── x509.h │ │ │ │ ├── x509_vfy.h │ │ │ │ └── x509v3.h │ │ │ └── lib/ │ │ │ └── libcrypto.a │ │ ├── include/ │ │ │ └── openssl/ │ │ │ ├── aes.h │ │ │ ├── asn1.h │ │ │ ├── asn1_mac.h │ │ │ ├── asn1err.h │ │ │ ├── asn1t.h │ │ │ ├── async.h │ │ │ ├── asyncerr.h │ │ │ ├── bio.h │ │ │ ├── bioerr.h │ │ │ ├── blowfish.h │ │ │ ├── bn.h │ │ │ ├── bnerr.h │ │ │ ├── buffer.h │ │ │ ├── buffererr.h │ │ │ ├── camellia.h │ │ │ ├── cast.h │ │ │ ├── cmac.h │ │ │ ├── cms.h │ │ │ ├── cmserr.h │ │ │ ├── comp.h │ │ │ ├── comperr.h │ │ │ ├── conf.h │ │ │ ├── conf_api.h │ │ │ ├── conferr.h │ │ │ ├── crypto.h │ │ │ ├── cryptoerr.h │ │ │ ├── ct.h │ │ │ ├── cterr.h │ │ │ ├── des.h │ │ │ ├── dh.h │ │ │ ├── dherr.h │ │ │ ├── dsa.h │ │ │ ├── dsaerr.h │ │ │ ├── dtls1.h │ │ │ ├── e_os2.h │ │ │ ├── ebcdic.h │ │ │ ├── ec.h │ │ │ ├── ecdh.h │ │ │ ├── ecdsa.h │ │ │ ├── ecerr.h │ │ │ ├── engine.h │ │ │ ├── engineerr.h │ │ │ ├── err.h │ │ │ ├── evp.h │ │ │ ├── evperr.h │ │ │ ├── hmac.h │ │ │ ├── idea.h │ │ │ ├── kdf.h │ │ │ ├── kdferr.h │ │ │ ├── lhash.h │ │ │ ├── md2.h │ │ │ ├── md4.h │ │ │ ├── md5.h │ │ │ ├── mdc2.h │ │ │ ├── modes.h │ │ │ ├── obj_mac.h │ │ │ ├── objects.h │ │ │ ├── objectserr.h │ │ │ ├── ocsp.h │ │ │ ├── ocsperr.h │ │ │ ├── opensslconf-android.h │ │ │ ├── opensslconf-apple.h │ │ │ ├── opensslconf-windows.h │ │ │ ├── opensslconf.h │ │ │ ├── opensslconf_android-arm.h │ │ │ ├── opensslconf_android-arm64.h │ │ │ ├── opensslconf_android-x86_64.h │ │ │ ├── opensslconf_android64-x86_64.h │ │ │ ├── opensslconf_catalyst_arm64.h │ │ │ ├── opensslconf_catalyst_x86_64.h │ │ │ ├── opensslconf_default.h │ │ │ ├── opensslconf_ios_arm64.h │ │ │ ├── opensslconf_ios_sim_x86_64.h │ │ │ ├── opensslconf_macos_arm64.h │ │ │ ├── opensslconf_macos_x86_64.h │ │ │ ├── opensslconf_watchos_arm64_32.h │ │ │ ├── opensslconf_watchos_armv7k.h │ │ │ ├── opensslconf_watchos_sim_i386.h │ │ │ ├── opensslconf_watchos_sim_x86_64.h │ │ │ ├── opensslconf_windows-x86.h │ │ │ ├── opensslconf_windows-x86_64.h │ │ │ ├── opensslv.h │ │ │ ├── ossl_typ.h │ │ │ ├── pem.h │ │ │ ├── pem2.h │ │ │ ├── pemerr.h │ │ │ ├── pkcs12.h │ │ │ ├── pkcs12err.h │ │ │ ├── pkcs7.h │ │ │ ├── pkcs7err.h │ │ │ ├── rand.h │ │ │ ├── rand_drbg.h │ │ │ ├── randerr.h │ │ │ ├── rc2.h │ │ │ ├── rc4.h │ │ │ ├── rc5.h │ │ │ ├── ripemd.h │ │ │ ├── rsa.h │ │ │ ├── rsaerr.h │ │ │ ├── safestack.h │ │ │ ├── seed.h │ │ │ ├── sha.h │ │ │ ├── srp.h │ │ │ ├── srtp.h │ │ │ ├── ssl.h │ │ │ ├── ssl2.h │ │ │ ├── ssl3.h │ │ │ ├── sslerr.h │ │ │ ├── stack.h │ │ │ ├── store.h │ │ │ ├── storeerr.h │ │ │ ├── symhacks.h │ │ │ ├── tls1.h │ │ │ ├── ts.h │ │ │ ├── tserr.h │ │ │ ├── txt_db.h │ │ │ ├── ui.h │ │ │ ├── uierr.h │ │ │ ├── whrlpool.h │ │ │ ├── x509.h │ │ │ ├── x509_vfy.h │ │ │ ├── x509err.h │ │ │ ├── x509v3.h │ │ │ └── x509v3err.h │ │ ├── linux/ │ │ │ ├── arm64/ │ │ │ │ └── libcrypto.a │ │ │ └── x86_64/ │ │ │ └── libcrypto.a │ │ ├── ohos/ │ │ │ ├── arm64-v8a/ │ │ │ │ └── libcrypto.a │ │ │ └── x86_64/ │ │ │ └── libcrypto.a │ │ └── windows/ │ │ ├── win32/ │ │ │ ├── libcrypto.lib │ │ │ ├── libssl.lib │ │ │ └── ossl_static.pdb │ │ └── win64/ │ │ ├── libcrypto.lib │ │ ├── libssl.lib │ │ └── ossl_static.pdb │ └── zlib/ │ ├── include/ │ │ ├── zconf.h │ │ └── zlib.h │ ├── linux/ │ │ ├── arm64/ │ │ │ └── libz.a │ │ └── x86_64/ │ │ └── libz.a │ └── windows/ │ ├── win32/ │ │ └── zlibstatic.lib │ └── win64/ │ └── zlibstatic.lib ├── templates/ │ ├── .swiftlint.yml │ ├── archive/ │ │ └── archive.sh │ ├── codesnippets/ │ │ ├── WCDB.ColumnCodableClass.Data.swift.codesnippet │ │ ├── WCDB.ColumnCodableClass.Double.swift.codesnippet │ │ ├── WCDB.ColumnCodableClass.Int32.swift.codesnippet │ │ ├── WCDB.ColumnCodableClass.Int64.swift.codesnippet │ │ ├── WCDB.ColumnCodableClass.String.swift.codesnippet │ │ └── WCDB.TableCodableClass.swift.codesnippet │ ├── install.sh │ └── xctemplates/ │ └── WCDB/ │ ├── ColumnCodable.xctemplate/ │ │ ├── Objective-CData/ │ │ │ ├── ___FILEBASENAME___+WCTColumnCoding.h │ │ │ └── ___FILEBASENAME___+WCTColumnCoding.mm │ │ ├── Objective-CDouble/ │ │ │ ├── ___FILEBASENAME___+WCTColumnCoding.h │ │ │ └── ___FILEBASENAME___+WCTColumnCoding.mm │ │ ├── Objective-CInteger32/ │ │ │ ├── ___FILEBASENAME___+WCTColumnCoding.h │ │ │ └── ___FILEBASENAME___+WCTColumnCoding.mm │ │ ├── Objective-CInteger64/ │ │ │ ├── ___FILEBASENAME___+WCTColumnCoding.h │ │ │ └── ___FILEBASENAME___+WCTColumnCoding.mm │ │ ├── Objective-CString/ │ │ │ ├── ___FILEBASENAME___+WCTColumnCoding.h │ │ │ └── ___FILEBASENAME___+WCTColumnCoding.mm │ │ ├── SwiftData/ │ │ │ └── ___FILEBASENAME___.swift │ │ ├── SwiftDouble/ │ │ │ └── ___FILEBASENAME___.swift │ │ ├── SwiftInteger32/ │ │ │ └── ___FILEBASENAME___.swift │ │ ├── SwiftInteger64/ │ │ │ └── ___FILEBASENAME___.swift │ │ ├── SwiftString/ │ │ │ └── ___FILEBASENAME___.swift │ │ └── TemplateInfo.plist │ ├── TableCodable.xctemplate/ │ │ ├── Objective-C/ │ │ │ ├── ___FILEBASENAME___+WCTTableCoding.h │ │ │ ├── ___FILEBASENAME___.h │ │ │ └── ___FILEBASENAME___.mm │ │ ├── Swift/ │ │ │ └── ___FILEBASENAME___.swift │ │ └── TemplateInfo.plist │ └── Tokenizer.xctemplate/ │ ├── Objective-C/ │ │ ├── ___FILEBASENAME___Tokenizer.h │ │ └── ___FILEBASENAME___Tokenizer.mm │ ├── Swift/ │ │ └── ___FILEBASENAME___.swift │ └── TemplateInfo.plist └── version/ ├── build.sh ├── build_xcframework.sh ├── bump.sh └── settings.sh