data-basic-0.3.0.0: A database library with a focus on ease of use, type safety and useful error messages

Safe HaskellNone
LanguageHaskell2010

Internal.Data.Basic.Virtual

Documentation

fieldMatch :: forall (toField :: Symbol) (fromField :: Symbol) toTable fromTable c. (TableField toTable toField, TableField fromTable fromField, TableFieldType toTable toField ~ TableFieldType fromTable fromField, Ord (TableFieldType toTable toField), ToField (TableFieldType toTable toField)) => Entity (FromDb c) toTable -> Var Filtering fromTable -> ConditionExp Source #

class (Table fromTable, Table toTable, AllSatisfy (TableField fromTable) fromFields, AllSatisfy (TableField toTable) toFields, SameTypes toTable toFields fromTable fromFields, AllTypesSatisfy (TypeSatisfies Ord) fromTable fromFields, AllTypesSatisfy (TypeSatisfies ToField) fromTable fromFields) => AllFieldsMatch (toFields :: [Symbol]) (fromFields :: [Symbol]) toTable fromTable where Source #

Minimal complete definition

allFieldsMatch

Methods

allFieldsMatch :: Entity (FromDb c) toTable -> Var Filtering fromTable -> ConditionExp Source #

Instances

(Table fromTable, Table toTable, TableField fromTable fromField, TableField toTable toField, (~) * (TableFieldType fromTable fromField) (TableFieldType toTable toField), Ord (TableFieldType toTable toField), ToField (TableFieldType fromTable fromField), AllFieldsMatch toFields fromFields toTable fromTable) => AllFieldsMatch ((:) Symbol toField toFields) ((:) Symbol fromField fromFields) toTable fromTable Source # 

Methods

allFieldsMatch :: Entity (FromDb c) toTable -> Var Filtering fromTable -> ConditionExp Source #

(Table fromTable, Table toTable, TableField fromTable fromField, TableField toTable toField, (~) * (TableFieldType fromTable fromField) (TableFieldType toTable toField), Ord (TableFieldType toTable toField), ToField (TableFieldType fromTable fromField)) => AllFieldsMatch ((:) Symbol toField ([] Symbol)) ((:) Symbol fromField ([] Symbol)) toTable fromTable Source # 

Methods

allFieldsMatch :: Entity (FromDb c) toTable -> Var Filtering fromTable -> ConditionExp Source #

virtualTableDbExpLens :: forall foreignKeyName c. (ForeignKeyConstraint foreignKeyName, AllFieldsMatch (ForeignKeyToFields foreignKeyName) (ForeignKeyFromFields foreignKeyName) (ForeignKeyTo foreignKeyName) (ForeignKeyFrom foreignKeyName)) => Getter' (Entity (FromDb c) (ForeignKeyTo foreignKeyName)) (DbStatement Filtered '[ForeignKeyFrom foreignKeyName]) Source #

type VirtualTable foreignKeyName res = (ForeignKeyConstraint foreignKeyName, AllFieldsMatch (ForeignKeyToFields foreignKeyName) (ForeignKeyFromFields foreignKeyName) (ForeignKeyTo foreignKeyName) (ForeignKeyFrom foreignKeyName), LiftedStatement Filtered '[ForeignKeyFrom foreignKeyName] res) Source #

virtualTableLens :: forall foreignKeyName c res. VirtualTable foreignKeyName res => Getter' (Entity (FromDb c) (ForeignKeyTo foreignKeyName)) res Source #

virtualTableLensProxy :: forall foreignKeyName res c proxy. VirtualTable foreignKeyName res => proxy foreignKeyName -> Getter' (Entity (FromDb c) (ForeignKeyTo foreignKeyName)) res Source #