Package-level declarations

Types

Link copied to clipboard
data class And<T : Any>(left: Where<T>, right: Where<T>) : Where<T>

Equivalent to AND in SQL

Link copied to clipboard
class AutoIncrementSqlPreparedStatement(index: Int = 0, preparedStatement: ERROR CLASS: Symbol not found for SqlPreparedStatement)
Link copied to clipboard
class EntityQueries(sqlDriver: ERROR CLASS: Symbol not found for SqlDriver) : <ERROR CLASS> ERROR CLASS: Symbol not found for TransacterImpl
Link copied to clipboard
data class Eq<T : Any, V>(builder: JsonPathBuilder<T>, value: V?) : Where<T>

Equivalent to = in SQL

Link copied to clipboard
data class GreaterThan<T : Any, V>(builder: JsonPathBuilder<T>, value: V?) : Where<T>

Equivalent to > in SQL

Link copied to clipboard
data class In<T : Any, V>(builder: JsonPathBuilder<T>, value: Collection<V>) : Where<T>

Equivalent to IN in SQL

Link copied to clipboard

Create a Path builder using one of the manu reified methods.

Link copied to clipboard
class JsonPathNode<R, V>

Represents a path in a JSON object, using limited reflection and descriptors to build the path.

Link copied to clipboard
open class KeyValueStorage<T : Any>(entityName: String, entityQueries: EntityQueries, metadataQueries: MetadataQueries, scope: ERROR CLASS: Symbol not found for CoroutineScope, type: KType, serializer: SqkonSerializer = KotlinSqkonSerializer(), config: KeyValueStorage.Config = Config(), readDispatcher: ERROR CLASS: Symbol not found for CoroutineDispatcher, writeDispatcher: ERROR CLASS: Symbol not found for CoroutineDispatcher, transacter: SqkonTransacter) : <ERROR CLASS> ERROR CLASS: Symbol not found for Transacter

Base interaction to the database.

Link copied to clipboard
data class LessThan<T : Any, V>(builder: JsonPathBuilder<T>, value: V?) : Where<T>

Equivalent to < in SQL

Link copied to clipboard
data class Like<T : Any>(builder: JsonPathBuilder<T>, value: String?) : Where<T>

Equivalent to LIKE in SQL

Link copied to clipboard
data class Not<T : Any>(where: Where<T>) : Where<T>

Equivalent to NOT ($where) in SQL

Link copied to clipboard
data class NotEq<T : Any, V>(builder: JsonPathBuilder<T>, value: V?) : Where<T>

Equivalent to != in SQL

Link copied to clipboard
data class NotIn<T : Any, V>(builder: JsonPathBuilder<T>, value: Collection<V>) : Where<T>
Link copied to clipboard
data class Or<T : Any>(left: Where<T>, right: Where<T>) : Where<T>

Equivalent to OR in SQL

Link copied to clipboard
data class OrderBy<T : Any>(builder: JsonPathBuilder<T>, direction: OrderDirection? = null)
Link copied to clipboard
Link copied to clipboard
data class ResultRow<T : Any>(val addedAt: ERROR CLASS: Symbol not found for Instant, val updatedAt: ERROR CLASS: Symbol not found for Instant, val expiresAt: ERROR CLASS: Symbol not found for Instant??, val readAt: ERROR CLASS: Symbol not found for Instant??, val writeAt: ERROR CLASS: Symbol not found for Instant, val value: T)
Link copied to clipboard
class Sqkon

Main entry point for Sqkon.

Link copied to clipboard
actual typealias SqlException = SQLException
expect class SqlException : Exception
actual typealias SqlException = SQLException
Link copied to clipboard
data class SqlQuery(val from: String? = null, val where: String? = null, val parameters: Int = 0, val bindArgs: AutoIncrementSqlPreparedStatement.() -> Unit = {}, val orderBy: String? = null)
Link copied to clipboard
abstract class Where<T : Any>

Functions

Link copied to clipboard
infix fun <T : Any> Where<T>.and(other: Where<T>): Where<T>

Equivalent to AND in SQL

Link copied to clipboard
inline fun <R : Any, V> KProperty1<R, V>.builder(serialName: String? = null, block: JsonPathNode<R, V>.() -> Unit = {}): JsonPathBuilder<R>
Link copied to clipboard
inline fun <R : Any, V> KProperty1<R, Collection<V>>.builderFromList(block: JsonPathNode<out R, V>.() -> Unit = {}): JsonPathBuilder<R>
Link copied to clipboard
infix fun <T : Any, V> JsonPathBuilder<T>.eq(value: V?): Eq<T, V>
infix inline fun <T : Any, V, VALUE> KProperty1<T, V>.eq(value: VALUE?): Eq<T, VALUE>

Equivalent to = in SQL

Link copied to clipboard
infix fun <T : Any, V> JsonPathBuilder<T>.gt(value: V?): GreaterThan<T, V>
infix inline fun <T : Any, V, VALUE> KProperty1<T, V>.gt(value: VALUE?): GreaterThan<T, VALUE>

Equivalent to > in SQL

Link copied to clipboard
infix fun <T : Any, V> JsonPathBuilder<T>.inList(value: Collection<V>): In<T, V>
infix inline fun <T : Any, V, C> KProperty1<T, V>.inList(value: Collection<C>): In<T, C>

Equivalent to IN in SQL

Link copied to clipboard
inline fun <T : Any> keyValueStorage(entityName: String, entityQueries: EntityQueries, metadataQueries: MetadataQueries, scope: ERROR CLASS: Symbol not found for CoroutineScope, serializer: SqkonSerializer = KotlinSqkonSerializer(), config: KeyValueStorage.Config = KeyValueStorage.Config(), readDispatcher: ERROR CLASS: Symbol not found for CoroutineDispatcher = dbReadDispatcher, writeDispatcher: ERROR CLASS: Symbol not found for CoroutineDispatcher = dbWriteDispatcher, transactor: SqkonTransacter = SqkonTransacter(entityQueries.sqlDriver)): KeyValueStorage<T>
Link copied to clipboard
infix fun <T : Any> JsonPathBuilder<T>.like(value: String?): Like<T>
infix inline fun <T : Any, V> KProperty1<T, V>.like(value: String?): Like<T>

Equivalent to LIKE in SQL

Link copied to clipboard
infix fun <T : Any, V> JsonPathBuilder<T>.lt(value: V?): LessThan<T, V>
infix inline fun <T : Any, V, VALUE> KProperty1<T, V>.lt(value: VALUE?): LessThan<T, VALUE>

Equivalent to < in SQL

Link copied to clipboard
infix fun <T : Any, V> JsonPathBuilder<T>.neq(value: V?): NotEq<T, V>
infix inline fun <T : Any, V, VALUE> KProperty1<T, V>.neq(value: VALUE?): NotEq<T, VALUE>

Equivalent to != in SQL

Link copied to clipboard
fun <T : Any> not(where: Where<T>): Not<T>

Equivalent to NOT ($where) in SQL

Link copied to clipboard
infix fun <T : Any, V> JsonPathBuilder<T>.notInList(value: Collection<V>): NotIn<T, V>
inline fun <T : Any, V, C> KProperty1<T, V>.notInList(value: Collection<C>): NotIn<T, C>

Equivalent to NOT IN in SQL

Link copied to clipboard
infix fun <T : Any> Where<T>.or(other: Where<T>): Where<T>

Equivalent to OR in SQL

Link copied to clipboard
inline fun <T : Any, V> OrderBy(property: KProperty1<T, V>, direction: OrderDirection? = null): OrderBy<T>
Link copied to clipboard
fun Sqkon(context: Context, scope: CoroutineScope, json: Json = SqkonJson { }, inMemory: Boolean = false, config: KeyValueStorage.Config = KeyValueStorage.Config()): Sqkon

fun Sqkon(context: Context, scope: CoroutineScope, json: Json = SqkonJson { }, dbFileName: String? = "sqkon.db", config: KeyValueStorage.Config = KeyValueStorage.Config()): Sqkon

Main entry point for Sqkon on Android

fun Sqkon(scope: CoroutineScope, json: Json = SqkonJson { }, type: AndroidxSqliteDatabaseType = AndroidxSqliteDatabaseType.Memory, config: KeyValueStorage.Config = KeyValueStorage.Config()): Sqkon
Link copied to clipboard
inline fun <R : Any, V, V2> KProperty1<R, V>.then(property: KProperty1<out V, Collection<V2>>, block: JsonPathNode<out V, V2>.() -> Unit = {}): JsonPathBuilder<R>
inline fun <R : Any, V, V1 : V, V2> KProperty1<R, V>.then(property: KProperty1<V1, V2>, fromSerialName: String? = null, thenSerialName: String? = null, block: JsonPathNode<V1, V2>.() -> Unit = {}): JsonPathBuilder<R>
inline fun <R : Any, V, V1 : V, V2> KProperty1<R, Collection<V>>.then(property: KProperty1<V1, V2>, fromSerialName: String? = null, thenSerialName: String? = null, block: JsonPathNode<V1, V2>.() -> Unit = {}): JsonPathBuilder<R>
Link copied to clipboard
Link copied to clipboard
inline fun <R : Any, R1 : R, V> KClass<R>.with(property: KProperty1<R1, V>, serialName: String? = null, block: JsonPathNode<R, V>.() -> Unit = {}): JsonPathBuilder<R>
Link copied to clipboard
inline fun <R : Any, V> KClass<R>.withList(property: KProperty1<R, Collection<V>>, serialName: String? = null, block: JsonPathNode<R, V>.() -> Unit = {}): JsonPathBuilder<R>