beam-migrate-0.3.2.1: SQL DDL support and migrations support library for Beam

Safe HaskellNone
LanguageHaskell2010

Database.Beam.Haskell.Syntax

Contents

Description

Instances that allow us to use Haskell as a backend syntax. This allows us to use migrations defined a la SQL to generate a beam schema.

Mainly of interest to backends.

Unfortunately, we define some orphan Hashable instances that aren't defined for us in haskell-src-exts.

Synopsis

Documentation

newtype HsDbField #

Constructors

HsDbField 

Fields

data HsConstraintDefinition #

Instances
Eq HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Show HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Generic HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Associated Types

type Rep HsConstraintDefinition :: * -> * #

Hashable HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Sql92SerializableConstraintDefinitionSyntax HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92ColumnConstraintDefinitionSyntax HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Sql92DisplaySyntax HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsConstraintDefinition = D1 (MetaData "HsConstraintDefinition" "Database.Beam.Haskell.Syntax" "beam-migrate-0.3.2.1-GE02m9FU6iI8g6DE3MEGYU" False) (C1 (MetaCons "HsConstraintDefinition" PrefixI True) (S1 (MetaSel (Just "hsConstraintDefinitionConstraint") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 HsExpr)))
type Sql92ColumnConstraintDefinitionConstraintSyntax HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ColumnConstraintDefinitionAttributesSyntax HsConstraintDefinition # 
Instance details

Defined in Database.Beam.Haskell.Syntax

data HsImport #

Constructors

HsImportAll 
HsImportSome (Set (ImportSpec ())) 
Instances
Eq HsImport # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Show HsImport # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Generic HsImport # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Associated Types

type Rep HsImport :: * -> * #

Methods

from :: HsImport -> Rep HsImport x #

to :: Rep HsImport x -> HsImport #

Semigroup HsImport # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Monoid HsImport # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Hashable HsImport # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

hashWithSalt :: Int -> HsImport -> Int #

hash :: HsImport -> Int #

type Rep HsImport # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsImport = D1 (MetaData "HsImport" "Database.Beam.Haskell.Syntax" "beam-migrate-0.3.2.1-GE02m9FU6iI8g6DE3MEGYU" False) (C1 (MetaCons "HsImportAll" PrefixI False) (U1 :: * -> *) :+: C1 (MetaCons "HsImportSome" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Set (ImportSpec ())))))

data HsDataType #

Instances
Eq HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Show HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Generic HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Associated Types

type Rep HsDataType :: * -> * #

Hashable HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql2003BinaryAndVarBinaryDataTypeSyntax HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql2008BigIntDataTypeSyntax HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql99DataTypeSyntax HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92DataTypeSyntax HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Sql92SerializableDataTypeSyntax HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Sql92DisplaySyntax HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsDataType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsDataType = D1 (MetaData "HsDataType" "Database.Beam.Haskell.Syntax" "beam-migrate-0.3.2.1-GE02m9FU6iI8g6DE3MEGYU" False) (C1 (MetaCons "HsDataType" PrefixI True) (S1 (MetaSel (Just "hsDataTypeMigration") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 HsExpr) :*: (S1 (MetaSel (Just "hsDataTypeType") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 HsType) :*: S1 (MetaSel (Just "hsDataTypeSerialized") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 BeamSerializedDataType))))

data HsType #

Constructors

HsType 
Instances
Eq HsType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

(==) :: HsType -> HsType -> Bool #

(/=) :: HsType -> HsType -> Bool #

Show HsType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Generic HsType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Associated Types

type Rep HsType :: * -> * #

Methods

from :: HsType -> Rep HsType x #

to :: Rep HsType x -> HsType #

Hashable HsType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

hashWithSalt :: Int -> HsType -> Int #

hash :: HsType -> Int #

type Rep HsType # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsType = D1 (MetaData "HsType" "Database.Beam.Haskell.Syntax" "beam-migrate-0.3.2.1-GE02m9FU6iI8g6DE3MEGYU" False) (C1 (MetaCons "HsType" PrefixI True) (S1 (MetaSel (Just "hsTypeSyntax") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Type ())) :*: S1 (MetaSel (Just "hsTypeImports") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 HsImports)))

data HsExpr #

Instances
Eq HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

(==) :: HsExpr -> HsExpr -> Bool #

(/=) :: HsExpr -> HsExpr -> Bool #

Show HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Generic HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Associated Types

type Rep HsExpr :: * -> * #

Methods

from :: HsExpr -> Rep HsExpr x #

to :: Rep HsExpr x -> HsExpr #

Hashable HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

hashWithSalt :: Int -> HsExpr -> Int #

hash :: HsExpr -> Int #

IsSql92FieldNameSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92QuantifierSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92ExpressionSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

valueE :: Sql92ExpressionValueSyntax HsExpr -> HsExpr #

rowE :: [HsExpr] -> HsExpr #

quantifierListE :: [HsExpr] -> HsExpr #

coalesceE :: [HsExpr] -> HsExpr #

caseE :: [(HsExpr, HsExpr)] -> HsExpr -> HsExpr #

fieldE :: Sql92ExpressionFieldNameSyntax HsExpr -> HsExpr #

betweenE :: HsExpr -> HsExpr -> HsExpr -> HsExpr #

andE :: HsExpr -> HsExpr -> HsExpr #

orE :: HsExpr -> HsExpr -> HsExpr #

addE :: HsExpr -> HsExpr -> HsExpr #

subE :: HsExpr -> HsExpr -> HsExpr #

mulE :: HsExpr -> HsExpr -> HsExpr #

divE :: HsExpr -> HsExpr -> HsExpr #

likeE :: HsExpr -> HsExpr -> HsExpr #

modE :: HsExpr -> HsExpr -> HsExpr #

overlapsE :: HsExpr -> HsExpr -> HsExpr #

nullIfE :: HsExpr -> HsExpr -> HsExpr #

positionE :: HsExpr -> HsExpr -> HsExpr #

eqE :: Maybe (Sql92ExpressionQuantifierSyntax HsExpr) -> HsExpr -> HsExpr -> HsExpr #

neqE :: Maybe (Sql92ExpressionQuantifierSyntax HsExpr) -> HsExpr -> HsExpr -> HsExpr #

ltE :: Maybe (Sql92ExpressionQuantifierSyntax HsExpr) -> HsExpr -> HsExpr -> HsExpr #

gtE :: Maybe (Sql92ExpressionQuantifierSyntax HsExpr) -> HsExpr -> HsExpr -> HsExpr #

leE :: Maybe (Sql92ExpressionQuantifierSyntax HsExpr) -> HsExpr -> HsExpr -> HsExpr #

geE :: Maybe (Sql92ExpressionQuantifierSyntax HsExpr) -> HsExpr -> HsExpr -> HsExpr #

eqMaybeE :: HsExpr -> HsExpr -> HsExpr -> HsExpr #

neqMaybeE :: HsExpr -> HsExpr -> HsExpr -> HsExpr #

castE :: HsExpr -> Sql92ExpressionCastTargetSyntax HsExpr -> HsExpr #

notE :: HsExpr -> HsExpr #

negateE :: HsExpr -> HsExpr #

isNullE :: HsExpr -> HsExpr #

isNotNullE :: HsExpr -> HsExpr #

isTrueE :: HsExpr -> HsExpr #

isNotTrueE :: HsExpr -> HsExpr #

isFalseE :: HsExpr -> HsExpr #

isNotFalseE :: HsExpr -> HsExpr #

isUnknownE :: HsExpr -> HsExpr #

isNotUnknownE :: HsExpr -> HsExpr #

charLengthE :: HsExpr -> HsExpr #

octetLengthE :: HsExpr -> HsExpr #

bitLengthE :: HsExpr -> HsExpr #

lowerE :: HsExpr -> HsExpr #

upperE :: HsExpr -> HsExpr #

trimE :: HsExpr -> HsExpr #

absE :: HsExpr -> HsExpr #

extractE :: Sql92ExpressionExtractFieldSyntax HsExpr -> HsExpr -> HsExpr #

existsE :: Sql92ExpressionSelectSyntax HsExpr -> HsExpr #

uniqueE :: Sql92ExpressionSelectSyntax HsExpr -> HsExpr #

subqueryE :: Sql92ExpressionSelectSyntax HsExpr -> HsExpr #

currentTimestampE :: HsExpr #

defaultE :: HsExpr #

inE :: HsExpr -> [HsExpr] -> HsExpr #

IsSql92ColumnConstraintSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

HasSqlValueSyntax HsExpr Bool # 
Instance details

Defined in Database.Beam.Haskell.Syntax

HasSqlValueSyntax HsExpr Int # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

sqlValueSyntax :: Int -> HsExpr #

type Rep HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsExpr = D1 (MetaData "HsExpr" "Database.Beam.Haskell.Syntax" "beam-migrate-0.3.2.1-GE02m9FU6iI8g6DE3MEGYU" False) (C1 (MetaCons "HsExpr" PrefixI True) ((S1 (MetaSel (Just "hsExprSyntax") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp ())) :*: S1 (MetaSel (Just "hsExprImports") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 HsImports)) :*: (S1 (MetaSel (Just "hsExprConstraints") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Asst ()]) :*: S1 (MetaSel (Just "hsExprTypeVariables") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Set (Name ()))))))
type Sql92ExpressionExtractFieldSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ExpressionCastTargetSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ExpressionFieldNameSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ExpressionSelectSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ExpressionValueSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ExpressionQuantifierSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ColumnConstraintMatchTypeSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ColumnConstraintReferentialActionSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ColumnConstraintExpressionSyntax HsExpr # 
Instance details

Defined in Database.Beam.Haskell.Syntax

data HsColumnSchema #

Instances
Eq HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Show HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Hashable HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92ColumnSchemaSyntax HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Sql92DisplaySyntax HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ColumnSchemaColumnTypeSyntax HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ColumnSchemaExpressionSyntax HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92ColumnSchemaColumnConstraintDefinitionSyntax HsColumnSchema # 
Instance details

Defined in Database.Beam.Haskell.Syntax

data HsDecl #

Constructors

HsDecl 

data HsAction #

Constructors

HsAction 
Instances
Semigroup HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Monoid HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92AlterTableSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92DropTableSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92CreateTableSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92DdlCommandSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92AlterTableAlterTableActionSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92CreateTableColumnSchemaSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92CreateTableTableConstraintSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92CreateTableOptionsSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92DdlCommandCreateTableSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92DdlCommandAlterTableSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92DdlCommandDropTableSyntax HsAction # 
Instance details

Defined in Database.Beam.Haskell.Syntax

newtype HsFieldLookup #

Constructors

HsFieldLookup 

Fields

unqual :: String -> QName () #

dataDecl :: DeclHead () -> [QualConDecl ()] -> Maybe (Deriving ()) -> Decl () #

insDataDecl :: Type () -> [QualConDecl ()] -> Maybe (Deriving ()) -> InstDecl () #

migrationDecl :: HsBeamBackend HsExpr -> [Exp ()] -> [(Maybe (Pat ()), HsExpr)] -> [HsEntity] -> Decl () #

DDL Syntax definitions

data HsNone #

Constructors

HsNone 
Instances
Eq HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

(==) :: HsNone -> HsNone -> Bool #

(/=) :: HsNone -> HsNone -> Bool #

Ord HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Show HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Generic HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Associated Types

type Rep HsNone :: * -> * #

Methods

from :: HsNone -> Rep HsNone x #

to :: Rep HsNone x -> HsNone #

Semigroup HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Monoid HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Hashable HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

Methods

hashWithSalt :: Int -> HsNone -> Int #

hash :: HsNone -> Int #

IsSql92ConstraintAttributesSyntax HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92ReferentialActionSyntax HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92MatchTypeSyntax HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92AlterColumnActionSyntax HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

IsSql92AlterTableActionSyntax HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Rep HsNone = D1 (MetaData "HsNone" "Database.Beam.Haskell.Syntax" "beam-migrate-0.3.2.1-GE02m9FU6iI8g6DE3MEGYU" False) (C1 (MetaCons "HsNone" PrefixI False) (U1 :: * -> *))
type Sql92AlterTableAlterColumnActionSyntax HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

type Sql92AlterTableColumnSchemaSyntax HsNone # 
Instance details

Defined in Database.Beam.Haskell.Syntax

HsSyntax utilities

tyParens :: Type () -> Type () #

functionTy :: Type () -> Type () -> Type () #

tyTuple :: [Type ()] -> Type () #

tyApp :: Type () -> [Type ()] -> Type () #

combineHsExpr :: (Exp () -> Exp () -> Exp ()) -> HsExpr -> HsExpr -> HsExpr #

hsInt :: (Integral a, Show a) => a -> HsExpr #

hsOp :: Text -> QOp () #

hsInstance :: Text -> [Type ()] -> [InstDecl ()] -> Decl () #

hsDerivingInstance :: Text -> [Type ()] -> Decl () #

Orphans

Orphan instances

Hashable Boxed # 
Instance details

Methods

hashWithSalt :: Int -> Boxed -> Int #

hash :: Boxed -> Int #

Hashable a => Hashable (Set a) # 
Instance details

Methods

hashWithSalt :: Int -> Set a -> Int #

hash :: Set a -> Int #

Hashable (ModuleName ()) # 
Instance details

Methods

hashWithSalt :: Int -> ModuleName () -> Int #

hash :: ModuleName () -> Int #

Hashable (SpecialCon ()) # 
Instance details

Methods

hashWithSalt :: Int -> SpecialCon () -> Int #

hash :: SpecialCon () -> Int #

Hashable (QName ()) # 
Instance details

Methods

hashWithSalt :: Int -> QName () -> Int #

hash :: QName () -> Int #

Hashable (Name ()) # 
Instance details

Methods

hashWithSalt :: Int -> Name () -> Int #

hash :: Name () -> Int #

Hashable (IPName ()) # 
Instance details

Methods

hashWithSalt :: Int -> IPName () -> Int #

hash :: IPName () -> Int #

Hashable (QOp ()) # 
Instance details

Methods

hashWithSalt :: Int -> QOp () -> Int #

hash :: QOp () -> Int #

Hashable (Op ()) # 
Instance details

Methods

hashWithSalt :: Int -> Op () -> Int #

hash :: Op () -> Int #

Hashable (CName ()) # 
Instance details

Methods

hashWithSalt :: Int -> CName () -> Int #

hash :: CName () -> Int #

Hashable (Namespace ()) # 
Instance details

Methods

hashWithSalt :: Int -> Namespace () -> Int #

hash :: Namespace () -> Int #

Hashable (ImportSpec ()) # 
Instance details

Methods

hashWithSalt :: Int -> ImportSpec () -> Int #

hash :: ImportSpec () -> Int #

Hashable (Assoc ()) # 
Instance details

Methods

hashWithSalt :: Int -> Assoc () -> Int #

hash :: Assoc () -> Int #

Hashable (Decl ()) # 
Instance details

Methods

hashWithSalt :: Int -> Decl () -> Int #

hash :: Decl () -> Int #

Hashable (PatternSynDirection ()) # 
Instance details

Hashable (TypeEqn ()) # 
Instance details

Methods

hashWithSalt :: Int -> TypeEqn () -> Int #

hash :: TypeEqn () -> Int #

Hashable (Annotation ()) # 
Instance details

Methods

hashWithSalt :: Int -> Annotation () -> Int #

hash :: Annotation () -> Int #

Hashable (BooleanFormula ()) # 
Instance details

Hashable (Role ()) # 
Instance details

Methods

hashWithSalt :: Int -> Role () -> Int #

hash :: Role () -> Int #

Hashable (DataOrNew ()) # 
Instance details

Methods

hashWithSalt :: Int -> DataOrNew () -> Int #

hash :: DataOrNew () -> Int #

Hashable (InjectivityInfo ()) # 
Instance details

Hashable (ResultSig ()) # 
Instance details

Methods

hashWithSalt :: Int -> ResultSig () -> Int #

hash :: ResultSig () -> Int #

Hashable (DeclHead ()) # 
Instance details

Methods

hashWithSalt :: Int -> DeclHead () -> Int #

hash :: DeclHead () -> Int #

Hashable (InstRule ()) # 
Instance details

Methods

hashWithSalt :: Int -> InstRule () -> Int #

hash :: InstRule () -> Int #

Hashable (InstHead ()) # 
Instance details

Methods

hashWithSalt :: Int -> InstHead () -> Int #

hash :: InstHead () -> Int #

Hashable (Deriving ()) # 
Instance details

Methods

hashWithSalt :: Int -> Deriving () -> Int #

hash :: Deriving () -> Int #

Hashable (DerivStrategy ()) # 
Instance details

Hashable (Binds ()) # 
Instance details

Methods

hashWithSalt :: Int -> Binds () -> Int #

hash :: Binds () -> Int #

Hashable (IPBind ()) # 
Instance details

Methods

hashWithSalt :: Int -> IPBind () -> Int #

hash :: IPBind () -> Int #

Hashable (Match ()) # 
Instance details

Methods

hashWithSalt :: Int -> Match () -> Int #

hash :: Match () -> Int #

Hashable (QualConDecl ()) # 
Instance details

Methods

hashWithSalt :: Int -> QualConDecl () -> Int #

hash :: QualConDecl () -> Int #

Hashable (ConDecl ()) # 
Instance details

Methods

hashWithSalt :: Int -> ConDecl () -> Int #

hash :: ConDecl () -> Int #

Hashable (FieldDecl ()) # 
Instance details

Methods

hashWithSalt :: Int -> FieldDecl () -> Int #

hash :: FieldDecl () -> Int #

Hashable (GadtDecl ()) # 
Instance details

Methods

hashWithSalt :: Int -> GadtDecl () -> Int #

hash :: GadtDecl () -> Int #

Hashable (ClassDecl ()) # 
Instance details

Methods

hashWithSalt :: Int -> ClassDecl () -> Int #

hash :: ClassDecl () -> Int #

Hashable (InstDecl ()) # 
Instance details

Methods

hashWithSalt :: Int -> InstDecl () -> Int #

hash :: InstDecl () -> Int #

Hashable (BangType ()) # 
Instance details

Methods

hashWithSalt :: Int -> BangType () -> Int #

hash :: BangType () -> Int #

Hashable (Unpackedness ()) # 
Instance details

Methods

hashWithSalt :: Int -> Unpackedness () -> Int #

hash :: Unpackedness () -> Int #

Hashable (Rhs ()) # 
Instance details

Methods

hashWithSalt :: Int -> Rhs () -> Int #

hash :: Rhs () -> Int #

Hashable (GuardedRhs ()) # 
Instance details

Methods

hashWithSalt :: Int -> GuardedRhs () -> Int #

hash :: GuardedRhs () -> Int #

Hashable (Type ()) # 
Instance details

Methods

hashWithSalt :: Int -> Type () -> Int #

hash :: Type () -> Int #

Hashable (MaybePromotedName ()) # 
Instance details

Hashable (Promoted ()) # 
Instance details

Methods

hashWithSalt :: Int -> Promoted () -> Int #

hash :: Promoted () -> Int #

Hashable (TyVarBind ()) # 
Instance details

Methods

hashWithSalt :: Int -> TyVarBind () -> Int #

hash :: TyVarBind () -> Int #

Hashable (Kind ()) # 
Instance details

Methods

hashWithSalt :: Int -> Kind () -> Int #

hash :: Kind () -> Int #

Hashable (FunDep ()) # 
Instance details

Methods

hashWithSalt :: Int -> FunDep () -> Int #

hash :: FunDep () -> Int #

Hashable (Context ()) # 
Instance details

Methods

hashWithSalt :: Int -> Context () -> Int #

hash :: Context () -> Int #

Hashable (Asst ()) # 
Instance details

Methods

hashWithSalt :: Int -> Asst () -> Int #

hash :: Asst () -> Int #

Hashable (Literal ()) # 
Instance details

Methods

hashWithSalt :: Int -> Literal () -> Int #

hash :: Literal () -> Int #

Hashable (Sign ()) # 
Instance details

Methods

hashWithSalt :: Int -> Sign () -> Int #

hash :: Sign () -> Int #

Hashable (Exp ()) # 
Instance details

Methods

hashWithSalt :: Int -> Exp () -> Int #

hash :: Exp () -> Int #

Hashable (XName ()) # 
Instance details

Methods

hashWithSalt :: Int -> XName () -> Int #

hash :: XName () -> Int #

Hashable (XAttr ()) # 
Instance details

Methods

hashWithSalt :: Int -> XAttr () -> Int #

hash :: XAttr () -> Int #

Hashable (Bracket ()) # 
Instance details

Methods

hashWithSalt :: Int -> Bracket () -> Int #

hash :: Bracket () -> Int #

Hashable (Splice ()) # 
Instance details

Methods

hashWithSalt :: Int -> Splice () -> Int #

hash :: Splice () -> Int #

Hashable (Safety ()) # 
Instance details

Methods

hashWithSalt :: Int -> Safety () -> Int #

hash :: Safety () -> Int #

Hashable (CallConv ()) # 
Instance details

Methods

hashWithSalt :: Int -> CallConv () -> Int #

hash :: CallConv () -> Int #

Hashable (Overlap ()) # 
Instance details

Methods

hashWithSalt :: Int -> Overlap () -> Int #

hash :: Overlap () -> Int #

Hashable (Activation ()) # 
Instance details

Methods

hashWithSalt :: Int -> Activation () -> Int #

hash :: Activation () -> Int #

Hashable (Rule ()) # 
Instance details

Methods

hashWithSalt :: Int -> Rule () -> Int #

hash :: Rule () -> Int #

Hashable (RuleVar ()) # 
Instance details

Methods

hashWithSalt :: Int -> RuleVar () -> Int #

hash :: RuleVar () -> Int #

Hashable (Pat ()) # 
Instance details

Methods

hashWithSalt :: Int -> Pat () -> Int #

hash :: Pat () -> Int #

Hashable (PXAttr ()) # 
Instance details

Methods

hashWithSalt :: Int -> PXAttr () -> Int #

hash :: PXAttr () -> Int #

Hashable (RPatOp ()) # 
Instance details

Methods

hashWithSalt :: Int -> RPatOp () -> Int #

hash :: RPatOp () -> Int #

Hashable (RPat ()) # 
Instance details

Methods

hashWithSalt :: Int -> RPat () -> Int #

hash :: RPat () -> Int #

Hashable (PatField ()) # 
Instance details

Methods

hashWithSalt :: Int -> PatField () -> Int #

hash :: PatField () -> Int #

Hashable (Stmt ()) # 
Instance details

Methods

hashWithSalt :: Int -> Stmt () -> Int #

hash :: Stmt () -> Int #

Hashable (QualStmt ()) # 
Instance details

Methods

hashWithSalt :: Int -> QualStmt () -> Int #

hash :: QualStmt () -> Int #

Hashable (FieldUpdate ()) # 
Instance details

Methods

hashWithSalt :: Int -> FieldUpdate () -> Int #

hash :: FieldUpdate () -> Int #

Hashable (Alt ()) # 
Instance details

Methods

hashWithSalt :: Int -> Alt () -> Int #

hash :: Alt () -> Int #