io.github.liewhite.sqlx

Type members

Classlikes

class AfterLimit[T](val AfterOrderBy: AfterOrderBy[_], val limit: Int)
class AfterOrderBy[T](val afterWhere: AfterWhere[_], val orderBy: Field[T])
class AfterSelect[T <: Tuple](val afterWhere: AfterWhere[_], val fields: T)
class AfterWhere[Q <: Query](val query: Q, val condition: Condition)
case class ColumnName(name: String) extends StaticAnnotation
class Condition
case class DBConfig(`type`: String, host: String, username: String, db: String, port: Option[Int], password: Option[String], maxConnection: Int, minIdle: Int, idleMills: Int)
class DBContext(val ds: DBDataSource)
Companion:
object
object DBContext
Companion:
class
class DBDataSource(val config: DBConfig)
Companion:
object
Companion:
class
object DSLMacros
class DriverNotSupportError(driver: String) extends Exception
case class Field[T](index: Int, modelName: String, fieldName: String, primaryKey: Boolean, colName: String, unique: Boolean, default: Option[Any], length: Option[Int], precision: Option[Precision], t: TField[T])
trait FromRecord[T]
Companion:
object
object FromRecord
Companion:
class
case class Idx(name: String, cols: Vector[String], unique: Boolean)
case class Index(name: String, unique: Boolean, priority: Int) extends StaticAnnotation
case class JoinItem(table: Table[_], joinType: JoinType)
case class Length(l: Int) extends StaticAnnotation
object Migration
case class Precision(precision: Int, scale: Int) extends StaticAnnotation
case class Primary() extends StaticAnnotation
class Query(val tables: Map[String, Table[_]], val joins: Vector[JoinItem]) extends Selectable
Companion:
object
object Query
Companion:
class
trait TField[T]
Companion:
object
object TField
Companion:
class
trait Table[T <: Product] extends Selectable
Companion:
object
object Table
Companion:
class
case class TableName(name: String) extends StaticAnnotation
trait ToRecord[T]
Companion:
object
object ToRecord
Companion:
class
case class Unique() extends StaticAnnotation

Extensions

Extensions

extension [R <: Record](record: R)
def as[T](using t: FromRecord[T]): Either[Throwable, T]
extension [R <: Record](records: Result[R])
def as[T](using t: FromRecord[T]): Vector[Either[Throwable, T]]
extension [T <: Product](t: T)
def toRecord(implicit evidence$1: ProductOf[T], tr: ToRecord[T]): ZIO[DSLContext, Throwable, Record]