io.getquill.quat
package io.getquill.quat
Members list
Type members
Classlikes
object BooQuatSerializer
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
BooQuatSerializer.type
object LinkedHashMapOps
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
LinkedHashMapOps.type
Quat.Product - Something that contains a list of fields e.g. case class Person(name:String,age:Int)
would be Product("name"->Quat.Value, "age"->Quat.Value)
This represents a simplified Sql-Type. Since it applies to all dialects, it is called Quill-Application-Type hence Quat. Quats represent the types of the Quill AST allowing us to know what fields exist on an Ident and more concretely what can be done with it. Currently they are:
Quat.Product - Something that contains a list of fields e.g. case class Person(name:String,age:Int)
would be Product("name"->Quat.Value, "age"->Quat.Value)
- Quat.Value - A value level Quat e.g. Int, Long, String etc... More specific Quat.Value types are planned int the future.
Quat.Generic - A Quat representing a type whose value is not known yet.
Quat.Null - A Quat representing a null value.
Quats are generally treated as through they are immutable although there are dynamic/mutable variables in some places (e.g. Product uses LinkedHashSet and var) due to various other issues (e.g. performance, serialization). It is assumed that all operations Quats have referential transparency.
Attributes
- Companion
- object
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object Generic.typeobject Null.typetrait Primitivetrait Booleanobject BooleanExpression.typeobject BooleanValue.typeobject Value.typeclass Productobject Unknown.typeShow all
object Quat
object QuatNestingHelper
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
QuatNestingHelper.type
object VerifyNoBranches
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
VerifyNoBranches.type
In this article