relational-query-0.12.3.1: Typeful, Modular, Relational, algebraic query engine
Copyright2017 Kei Hibino
LicenseBSD3
Maintainerex8k.hibino@gmail.com
Stabilityexperimental
Portabilityunknown
Safe HaskellSafe-Inferred
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 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

SqlContext OverWindow 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 available in Aggregated context

Instance details

Defined in Database.Relational.Projectable.Instances

OperatorContext Flat Source #

full SQL expression is available 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 Aggregated Source #

Aggregated context is aggregated context

Instance details

Defined in Database.Relational.Projectable.Instances

AggregatedContext OverWindow Source #

OverWindow context is aggregated context

Instance details

Defined in Database.Relational.Projectable.Instances

data PlaceHolders p Source #

Placeholder parameter type which has real parameter type argument p.

Constructors

PlaceHolders 

Instances

Instances details
ProductIsoApplicative PlaceHolders Source #

Compose record type PlaceHolders using applicative style.

Instance details

Defined in Database.Relational.Projectable.Instances

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 #

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