Package-level declarations
Types
Typed scope inside a whenIs<V> { ... } branch.
Builder for predicate-dispatch CASE/WHEN where the discriminator is an arbitrary field (enum, string, etc.). Branches are matched against the value of discriminatorPath for equality.
Row in the entity table. The trailing _ on value_ dodges Kotlin's value contextual keyword; the rest of the codebase references the property by that name.
Equivalent to > in SQL
Create a Path builder using one of the many reified methods.
Represents a path in a JSON object, using limited reflection and descriptors to build the path.
Base interaction to the database.
Where the database lives. Replaces the eygraber AndroidxSqliteDatabaseType in the public API.
Read/write coroutine dispatcher bundle for Sqkon.
Tunables for the native androidx.sqlite-backed driver. Defaults match the pre-3.0 behavior (WAL, NORMAL, 4 reader connections), with two intentional differences: every connection now opens with SQLITE_OPEN_FULLMUTEX on JVM too (previously implicit only on Android), and a non-zero busy_timeout (3000 ms) is applied for WAL-contention hardening (was SQLite's fail-immediately default of 0).
SQLite journal mode. WAL is the default and required for the reader/writer pool.
Thrown out of transactionWithResult when SqkonTransactionScope.rollback is called: a result-returning transaction has no value to hand back on rollback, so it aborts by throwing.
Sqkon-owned transaction scope, the receiver of transaction / transactionWithResult.
Functions
CASE WHEN expression rooted at the entity itself when it is a sealed type (e.g. KeyValueStorage<BaseSealed>). Discriminator path is $[0], payload is under $[1].
CASE WHEN expression rooted at a sealed parent property (e.g. MyEntity::status). The variant discriminator is read from <parentPath>[0]; payload paths sit under [1].
Main entry point for Sqkon on Android.
Run body in a database transaction. Calling SqkonTransactionScope.rollback discards the work and returns silently.
Run body in a database transaction and return its value. Calling SqkonTransactionScope.rollback aborts the transaction and throws SqkonRollbackException (there is no value to return).
Reach into a property of the variant V from inside a whenIs<V> { ... } scope, producing a JsonPathBuilder rooted at the variant payload (e.g. $[1].dueAt for a sealed-root entity).
Nested-path variant — chains then onto the variant property path.