relational-query-0.12.3.0: Typeful, Modular, Relational, algebraic query engine
Copyright2017 Kei Hibino
LicenseBSD3
Maintainerex8k.hibino@gmail.com
Stabilityexperimental
Portabilityunknown
Safe HaskellNone
LanguageHaskell2010

Database.Relational.Projectable.Unsafe

Description

This module provides unsafe interfaces between projected terms and SQL terms.

Synopsis

Documentation

class SqlContext c where Source #

Interface to project SQL terms unsafely.

Methods

unsafeProjectSqlTerms :: [StringSQL] -> Record c t Source #

Unsafely project from SQL expression terms.

Instances

Instances details
SqlContext OverWindow Source #

Unsafely make Record from SQL terms.

Instance details

Defined in Database.Relational.Projectable.Instances

SqlContext Aggregated Source #

Unsafely make Record from SQL terms.

Instance details

Defined in Database.Relational.Projectable.Instances

SqlContext Flat Source #

Unsafely make Record from SQL terms.

Instance details

Defined in Database.Relational.Projectable.Instances

class SqlContext c => OperatorContext c Source #

Constraint to restrict context of full SQL expressions. For example, the expression at the left of OVER clause is not allowed using full SQL expression.

Instances

Instances details
OperatorContext Aggregated Source #

full SQL expression is availabe in Aggregated context

Instance details

Defined in Database.Relational.Projectable.Instances

OperatorContext Flat Source #

full SQL expression is availabe in Flat context

Instance details

Defined in Database.Relational.Projectable.Instances

class AggregatedContext ac Source #

Constraint to restrict context of aggregated SQL context.

Instances

Instances details
AggregatedContext OverWindow Source #

OverWindow context is aggregated context

Instance details

Defined in Database.Relational.Projectable.Instances

AggregatedContext Aggregated Source #

Aggregated context is aggregated context

Instance details

Defined in Database.Relational.Projectable.Instances

data PlaceHolders p Source #

Placeholder parameter type which has real parameter type arguemnt p.

Constructors

PlaceHolders 

Instances

Instances details
ProductIsoFunctor PlaceHolders Source #

Compose seed of record type PlaceHolders.

Instance details

Defined in Database.Relational.Projectable.Instances

Methods

(|$|) :: ProductConstructor (a -> b) => (a -> b) -> PlaceHolders a -> PlaceHolders b #

ProductIsoApplicative PlaceHolders Source #

Compose record type PlaceHolders using applicative style.

Instance details

Defined in Database.Relational.Projectable.Instances

ProjectableMaybe PlaceHolders Source #

Control phantom Maybe type in placeholder parameters.

Instance details

Defined in Database.Relational.Projectable

ProductIsoEmpty PlaceHolders () Source #

Zipping except for identity element laws against placeholder parameter type.

Instance details

Defined in Database.Relational.Projectable.Instances

TableDerivable r => Show (Record Flat r -> Assign r (PlaceHolders p)) Source #

Show Set clause and WHERE clause.

Instance details

Defined in Database.Relational.Effect

Methods

showsPrec :: Int -> (Record Flat r -> Assign r (PlaceHolders p)) -> ShowS #

show :: (Record Flat r -> Assign r (PlaceHolders p)) -> String #

showList :: [Record Flat r -> Assign r (PlaceHolders p)] -> ShowS #

TableDerivable r => Show (Record Flat r -> Restrict (PlaceHolders p)) Source #

Show WHERE clause.

Instance details

Defined in Database.Relational.Effect