{-# LANGUAGE TupleSections,ScopedTypeVariables,DeriveDataTypeable,OverloadedStrings #-} -- UUAGC 0.9.52.1 (hssqlppp/src/Database/HsSqlPpp/Internals/AstInterna) module Database.HsSqlPpp.Internals.AstInternal( --from the ag files: --ast nodes Statement (..) ,QueryExpr (..) ,WithQueryList ,WithQuery(..) ,FnBody (..) ,SetClause (..) ,SetClauseList ,TableRef (..) ,JoinExpr (..) ,JoinType (..) ,JoinHint (..) ,SelectList (..) ,SelectItem (..) ,CopyFromSource (..) ,CopyToSource(..) ,CopyToOption(..) ,CopyFromOption(..) ,TablePartitionDef(..) ,TablePartitionDateTimeInterval(..) ,AttributeDef (..) ,RowConstraint (..) ,AlterDatabaseOperation(..) ,AlterTableOperation(..) ,AlterTableAction(..) ,AlterSequenceOperation(..) ,AlterSequenceAction(..) ,AlterColumnAction(..) ,AlterSchemaOperation(..) ,Constraint (..) ,TypeAttributeDef (..) ,ParamDef (..) ,VarDef (..) ,RaiseType (..) ,CombineType (..) ,Volatility (..) ,Language (..) ,TypeName (..) ,DropType (..) ,Cascade (..) ,Direction (..) ,Distinct (..) ,NullsOrder(..) ,Natural (..) ,IfExists (..) ,Replace(..) ,RestartIdentity (..) ,ScalarExpr (..) ,Name(..) ,nameComponents ,NameComponent(..) ,ncStr ,IntervalField(..) ,ExtractField(..) ,FrameClause(..) ,OdbcLiteralType(..) ,InList (..) ,LiftFlavour(..) ,TriggerWhen(..) ,TriggerEvent(..) ,TriggerFire(..) ,QueryHint(..) ,StatementList ,ScalarExprListStatementListTripleList ,ScalarExprListStatementListTriple ,ScalarExprList ,ParamDefList ,AttributeDefList ,ConstraintList ,TypeAttributeDefList ,TypeNameList ,NameTypeNameListPair ,NameTypeNameListPairList ,ScalarExprStatementListPairList --,SetClauseList ,CaseScalarExprListScalarExprPairList ,MaybeScalarExpr ,TableRefList ,ScalarExprListList ,SelectItemList ,OnExpr ,RowConstraintList ,VarDefList ,ScalarExprStatementListPair ,CaseScalarExprListScalarExprPair ,ScalarExprDirectionPair ,ScalarExprDirectionPairList ,MaybeBoolExpr ,MaybeSelectList ,SetValue(..) ,AlterTableActionList ,NameComponentList ,MaybeNameComponentList -- typechecking ,typeCheckStatements --,typeCheckParameterizedStatement ,typeCheckScalarExpr --,typeCheckScalarExprEnv ,typeCheckQueryExpr ,TypeCheckFlags(..) ,addExplicitCasts ,addImplicitCasts -- annotation ,Annotation(..) --,TypeExtra(..) ,SourcePosition ,ParameterizedStatementType ,getAnnotation ,updateAnnotation ,emptyAnnotation ,makeSelect --,canonicalizeTypeNames ) where --import Data.Maybe --import Data.Either --import Data.List --import Control.Applicative import Data.Data --import Data.Char --import Control.Monad.State --import Control.Arrow import Data.Generics import Data.Generics.Uniplate.Data --import Debug.Trace --import Text.Show.Pretty --import Database.HsSqlPpp.Internals.TypesInternal --import Database.HsSqlPpp.Internals.TypeChecking.TypeConversion --import Database.HsSqlPpp.Internals.TypeChecking.Environment hiding (JoinType(..)) --import Database.HsSqlPpp.Internals.Catalog.CatalogInternal (NameComponent(..),ncStr) --import Database.HsSqlPpp.Utils.Utils --import Database.HsSqlPpp.Internals.Dialect --import Data.Text (Text) import qualified Data.Text as T --import qualified Data.Text.Lazy as LT -- very bad, we use types in the syntax outside of the already exception -- in the annotation (which can be removed when the annotation type -- becomes a type parameters -- can replace the use of type extra with (typename,int,int) triple -- to fix this --import Database.HsSqlPpp.Internals.TypesInternal (TypeExtra) {-# LINE 2 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} import Data.Text (Text) import qualified Database.HsSqlPpp.Internals.TypeChecking.Environment as E import Database.HsSqlPpp.Internals.TypeChecking.Environment (Environment) import Database.HsSqlPpp.Internals.TypesInternal import Database.HsSqlPpp.Internals.Dialect import Database.HsSqlPpp.Internals.Catalog.CatalogInternal import Database.HsSqlPpp.Internals.Catalog.CatalogTypes import Database.HsSqlPpp.Internals.Catalog.CatalogBuilder import Database.HsSqlPpp.Internals.TypeChecking.TypeConversion.TypeConversion -- todo: find a better way to do this, this information should come -- via the dialect or catalog in the attributes import Database.HsSqlPpp.Dialects.OdbcCatalog import Control.Monad import Data.List import Data.Maybe import Data.Char import Text.Read import Control.Applicative {-# LINE 181 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 14 "hssqlppp/src/Database/HsSqlPpp/Internals/Annotation.ag" #-} import qualified Database.HsSqlPpp.Internals.TypesInternal as T import qualified Database.HsSqlPpp.Internals.Catalog.CatalogTypes as C {-# LINE 188 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 62 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} -- todo: replace the other nmcString function with this one -- which uses either instead of error xnmcString :: NameComponent -> Either [TypeError] Text xnmcString (QNmc n) = Right $ T.pack n xnmcString (Nmc n) = Right $ T.pack $ map toLower n xnmcString (AntiNameComponent _) = Left [InternalError "tried to get nmc string from antinamecomponent"] {-# LINE 197 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 191 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} splitTypeExtraList:: Maybe [TypeExtra] -> Maybe (TypeExtra,[TypeExtra]) splitTypeExtraList mte = mte >>= f where f [] = Nothing f (et:ets') = Just (et,ets') {-# LINE 206 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 212 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} -- | thet name to choose for a column in a select list which doesn't -- have an explicit name - these are postgresql's rules columnName :: ScalarExpr -> NameComponent columnName (Identifier _ i) = last $ nameComponents i columnName (App _ (Name _ ncs) _) = last ncs columnName (Cast _ _ (SimpleTypeName _ (Name _ ncs))) = last ncs columnName (ImplicitCast _ e _) = columnName e columnName (WindowApp _ (App _ (Name _ ncs) _) _ _ _) = last ncs columnName (AggregateApp _ _ (App _ (Name _ ncs) _) _) = last ncs columnName _ = QNmc "?column?" {-# LINE 221 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 160 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} convertJoinType:: JoinType -> E.JoinType convertJoinType LeftOuter = E.LeftOuter convertJoinType RightOuter = E.RightOuter convertJoinType FullOuter = E.FullOuter convertJoinType _ = E.Inner {-# LINE 230 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 82 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} secondM :: Functor f => (t -> f a) -> (t1, t) -> f (t1, a) secondM f (a,b) = (a,) <$> f b {-# LINE 236 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 47 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} needsImplicitCast:: Bool -> TypeExtra -> TypeExtra -> Bool needsImplicitCast expectedCast upType expType = tePrecision upType /= tePrecision expType || teScale upType /= teScale expType || teNullable upType /= teNullable expType && nullabilityCast || teType upType /= teType expType && (not . null) (nub [teType upType, teType expType] \\ [ScalarType "varchar", ScalarType "text",ScalarType "nvarchar"]) where nullabilityCast = expectedCast -- this function appeared because nullability does not always influence the type to cast to implicitCastType:: Bool -> TypeExtra -> TypeExtra -> TypeExtra implicitCastType expectedCast upType expType = expType{tePrecision = precision, teScale = scale, teNullable = nullability} where nullabilityCast = expectedCast nullabilitySource = if nullabilityCast then expType else upType precisionSource = expType nullability = teNullable nullabilitySource precision = tePrecision precisionSource scale = teScale precisionSource {-# LINE 261 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 512 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} getMaybeIntsFromLiterals :: [ScalarExpr] -> MatchAppLiteralList getMaybeIntsFromLiterals sel = map extractor sel where extractor :: ScalarExpr -> Maybe Int extractor (NumberLit _ s) = readMaybe s :: Maybe Int extractor _ = Nothing {-# LINE 271 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 795 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} classifyInteger :: Dialect -> String -> Either [TypeError] Text classifyInteger d s = maybe (Left []) Right $ case (readMaybe s :: Maybe Integer) of -- assuming number literals are always positive Just n | n < (2 ^ (31 :: Integer)) -> ansiTypeNameToDialect d "int" | n < (2 ^ (63 :: Integer)) -> ansiTypeNameToDialect d "bigint" _ -> ansiTypeNameToDialect d "numeric" {-# LINE 281 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 26 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} -- | some options when typechecking data TypeCheckFlags = TypeCheckFlags { -- | add qualifiers to unqualified ids where possible tcfAddQualifiers :: Bool -- | add full aliases to every tableref and subselect ,tcfAddFullTablerefAliases :: Bool -- | add explicit aliases to all select items ,tcfAddSelectItemAliases :: Bool -- | expand stars in select lists to explicit list columns ,tcfExpandStars :: Bool ,tcfDialect :: Dialect} deriving (Show,Eq) -- | Typechecks the ast, and returns the updated catalog (which -- includes changes from any ddl statements in the ast). typeCheckStatements :: TypeCheckFlags -> Catalog -> [Statement] -> (Catalog,[Statement]) typeCheckStatements f cat sts = let t = _sem_Root (Root sts) ta = _wrap_Root t Inh_Root {_cat_Inh_Root = cat ,_flags_Inh_Root = f {-,_lib_Inh_Root = emptyBindings ,_idenv_Inh_Root = emptyIDEnv "tcs"-}} tl = _annotatedTree_Syn_Root ta cat1 = cat --_producedCat_Syn_Root ta in case tl of Root r -> (cat1,fixTree (tcfDialect f) r) -- | Typecheck a query expr typeCheckQueryExpr :: TypeCheckFlags -> Catalog -> QueryExpr -> QueryExpr typeCheckQueryExpr f cat qe = let (_,[QueryStatement _ qe']) = typeCheckStatements f cat [QueryStatement emptyAnnotation qe] in qe' -- | Not working yet. Typechecks a statement possibly containing ? -- placeholders. These are annotated with the 'inferred type', and the -- stType annotation on the return value can be used to get this info -- easily. Returns Left if the statement is not a query,insert,update or delete -- statement {-typeCheckParameterizedStatement :: TypeCheckFlags -> Catalog -> Statement -> Either String Statement typeCheckParameterizedStatement f cat st = case st of QueryStatement _ _ -> tc Insert _ _ _ _ _ -> tc Update _ _ _ _ _ _ -> tc Delete _ _ _ _ _ -> tc _ -> Left "requires select, update, insert or delete statement" where tc = let tl = typeCheckStatements f cat [st] in case tl of (_,[st1]) -> Right st1 _ -> error "impossible happened in typeCheckPS!" -} {- -- | type check a scalar expr typeCheckScalarExpr :: TypeCheckFlags -> Catalog -> ScalarExpr -> ScalarExpr typeCheckScalarExpr f cat ex = let t = _sem_ScalarExprRoot (ScalarExprRoot ex) rt = (_annotatedTree_Syn_ScalarExprRoot (_wrap_ScalarExprRoot t Inh_ScalarExprRoot {_cat_Inh_ScalarExprRoot = cat ,_flags_Inh_ScalarExprRoot = f ,_downEnv_Inh_ScalarExprRoot = E.emptyEnvironment {-,_lib_Inh_ScalarExprRoot = emptyBindings ,_idenv_Inh_ScalarExprRoot = emptyIDEnv "t cse"-}})) in case rt of ScalarExprRoot e -> fixTree e -} typeCheckScalarExpr :: TypeCheckFlags -> Catalog -> Environment -> ScalarExpr -> ScalarExpr typeCheckScalarExpr f cat env ex = let t = _sem_ScalarExprRoot (ScalarExprRoot ex) rt = _annotatedTree_Syn_ScalarExprRoot $ _wrap_ScalarExprRoot t Inh_ScalarExprRoot{_cat_Inh_ScalarExprRoot = cat ,_flags_Inh_ScalarExprRoot = f ,_downEnv_Inh_ScalarExprRoot = env} in case rt of ScalarExprRoot e -> fixTree (tcfDialect f) e {-# LINE 365 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 158 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} -- | run on a typechecked tree. Finds all the places where an implicit -- cast has been used in the typechecking and inserts an explicit cast addExplicitCasts :: Data a => a -> a addExplicitCasts = transformBi removeDoubleCasts . transformBi addCast where addCast :: ScalarExpr -> ScalarExpr addCast e = fromMaybe e $ do t <- anImplicitCast (getAnnotation e) n <- nameOfType $ teType t return $ Cast emptyAnnotation e n -- addCast isn't very smart, so remove any unneeded casts -- that it has inserted. Only do this when have two -- nested casts which cast to the same type, so this -- shouldn't cause problems with sane sql removeDoubleCasts :: ScalarExpr -> ScalarExpr removeDoubleCasts e = case e of (Cast a (Cast _ e' t1) t) | resetAnnotations t1 == resetAnnotations t -> Cast a e' t e' -> e' resetAnnotations = transformBi (const emptyAnnotation) -- | variation of the above, which uses ImplicitCast ctor addImplicitCasts :: Data a => Catalog -> a -> a addImplicitCasts cat = transformBi removeDoubleCasts . transformBi addCast where addCast:: ScalarExpr -> ScalarExpr addCast e = fromMaybe e $ do te <- anImplicitCast ann' -- ImplicitCastToDo: why anImplicitCast is not Nothing above Star _ <- nameOfType $ teType te -- in order to preserve the old logic -- guard $ isCastable e $ teType te guard $ anType ann' /= Just te return $ ImplicitCast emptyAnnotation e te where _isCastable:: ScalarExpr -> Type -> Bool _isCastable e' to = fromMaybe False $ do from <- liftM teType $ anType $ getAnnotation e' either (const $ if from == UnknownType then Just True else Nothing) Just $ catCast cat ImplicitCastContext from to ann' = getAnnotation e removeDoubleCasts:: ScalarExpr -> ScalarExpr removeDoubleCasts e = fst $ accumulateCasts e -- For each implicit cast, if there is a sequence of implicit casts right under it, -- that remained after bottom-up application of the algorithm being described: -- 1. Check if there is a type in the sequence (of argument types of implicit casts), -- which is implicitly castable to the target type of the current implicit cast, -- according to the current catalog. -- 2. If there is such a type, replace a sequence of casts that starts at this type with -- a single cast, and shorten the list of casts to be further investigated (snd of -- output type of this function). -- 2.1. Analyze the list bottom-up, so that the longest possible sequence of casts is -- replaced. -- 3. If there is no such a type, just add the current cast to the list. -- Reset the list on a node other than ImplicitCast. accumulateCasts:: ScalarExpr -> (ScalarExpr,[(ScalarExpr,Type)]) accumulateCasts e = case e of ImplicitCast a e' te -> let (e1,ets) = accumulateCasts e' eStart = ImplicitCast a e1 te isCastable (_,t) = either (const False) id $ catCast cat ImplicitCastContext t $ teType te f z xs = case dropWhile (not . isCastable) xs of [] -> z xs'@((e'',_):rest) -> f (ImplicitCast a e'' te, xs') rest in case anType $ getAnnotation e1 of Nothing -> (eStart,[]) -- cut here (should not happen in practice) Just te1 -> f (eStart, (e1, teType te1):ets) ets _ -> (e,[]) nameOfType :: Type -> Maybe TypeName nameOfType (ScalarType t) = Just $ SimpleTypeName emptyAnnotation (Name emptyAnnotation [Nmc $ T.unpack t]) -- a hack to support precision cast from string literals nameOfType UnknownType = Just $ SimpleTypeName emptyAnnotation (Name emptyAnnotation [Nmc "unknown"]) nameOfType (DomainType t) = Just $ SimpleTypeName emptyAnnotation (Name emptyAnnotation [Nmc $ T.unpack t]) nameOfType (EnumType t) = Just $ SimpleTypeName emptyAnnotation (Name emptyAnnotation [Nmc $ T.unpack t]) nameOfType (NamedCompositeType t) = Just $ SimpleTypeName emptyAnnotation (Name emptyAnnotation [Nmc $ T.unpack t]) nameOfType _ = Nothing -- hack for various fixups fixTree :: Data a => Dialect -> a -> a fixTree = fixMssqlDates {- disgusting hack to fix up datediff,datepart, convert and other functions which accept a fixed list of keywords for one or more of the arguments for sql server: set the type for the first argument to type in if it is in the acceptable list. This is really bad. What happens is that the normal typechecker will check the keyword as an identifier and (usually!) put in unknown identifier error. Then, when the function is typechecked, it will ignore the type for this argument. After we've finished, the type error is replaced with int type here. The proper fix: I think a good way to look at these is to consider them fixed enums which can only accept a literal (and not an enum valued expression). We set a flag/enum thing in the typecheck environment of the identifier, so that it can check the identifier fits one of the valid functions in the identifier itself. Then, there doesn't need to be a fix here, and typechecking the function should work without a hack here too. The typechecking of the function itself still needs some special casing (e.g. for the convert function in odbc (and similar in regular sql server syntax), the result type depends on the value of the 'enum'. This can be implemented in a similar way to the literal ints being passed to the function type checker. This will be fixed with the rewrite of the findcallmatch/matchapp/a million different fns for precision and nullability/tcApplike mess. -} fixMssqlDates :: Data a => Dialect -> a -> a fixMssqlDates d = transformBi $ \x -> case x of App aa nm@(Name _ [Nmc fn]) [Identifier ai tn@(Name _ [Nmc tnn]),a,b] | map toLower fn `elem` ["datediff","dateadd"] , map toLower tnn `elem` dateparts -> App aa nm [Identifier (nai ai) tn,a,b] App aa nm@(Name _ [Nmc fn]) [Identifier ai tn@(Name _ [Nmc tnn]),a] | map toLower fn == "datepart" , map toLower tnn `elem` dateparts -> App aa nm [Identifier (nai ai) tn,a] App aa nm@(Name _ [Nmc fn]) [a,Identifier ai tn@(Name _ [Nmc tnn])] | map toLower fn == "convert" , map toLower tnn `elem` map fst odbcConvertTypes -> App aa nm [a,Identifier (nai ai) tn] App aa nm@(Name _ [Nmc fn]) (Identifier ai tn@(Name _ [Nmc tnn]):as) | map toLower fn `elem` ["timestampadd","timestampdiff"] , map toLower tnn `elem` odbcIntervalTypes -> App aa nm (Identifier (nai ai) tn:as) x' -> x' where dateparts :: [String] dateparts = ["day","dd","d","month","mm","m","year","yyyy" ,"yy","quarter","qq","q","dayofyear","doy","dy","y" ,"weekday","dw","week","ww","wk","hour","hh" ,"minute","mi","n","second","ss","s","millisecond","ms" ,"microsecond","mcs","nanosecond","ns"] -- todo: use canonical tsql name for typeInt nai ai = ai {anType = (mkTypeExtraNN . ScalarType) <$> ansiTypeNameToDialect d "int" ,anErrs = []} -- temp utility function {-canonicalizeType :: Dialect -> Type -> Type canonicalizeType d (ScalarType t) = ScalarType $ canonicalizeTypeName d t canonicalizeType _ t = t-} {-# LINE 521 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 20 "hssqlppp/src/Database/HsSqlPpp/Internals/Annotation.ag" #-} -- | Represents a source file position, usually set by the parser. type SourcePosition = (FilePath,Int,Int) -- | Statement type is used for getting type information for a -- parameterized statement. The first part is the args that the -- parameterized statement needs, and the second is the names and types -- of the output columns. No way to signal that a statement returns -- exactly one row at the moment type ParameterizedStatementType = ([T.Type],[(String,T.Type)]) {-# LINE 535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 52 "hssqlppp/src/Database/HsSqlPpp/Internals/Annotation.ag" #-} --some simple wrappers around uniplate for internal use. I'm not sure --which of these are actually used -- | An annotation value with no information. emptyAnnotation :: Annotation emptyAnnotation = Annotation Nothing Nothing [] Nothing [] -- | get the annotation for the root element of the tree passed getAnnotation :: Data a => a -> Annotation getAnnotation = head . childrenBi --don't know how to do this one with uniplate -- | Update the first annotation in a tree using the function supplied updateAnnotation :: Data a => (Annotation -> Annotation) -> a -> a updateAnnotation f = gmapT (mkT f) {-# LINE 557 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 518 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} nameComponents :: Name -> [NameComponent] nameComponents (Name _ is) = is -- todo: don't use error nameComponents (AntiName _) = error "tried to get namecomponents of antiname" {-# LINE 565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 538 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data LiftFlavour = LiftAny | LiftAll deriving (Show,Eq,Typeable,Data) data Direction = Asc | Desc deriving (Show,Eq,Typeable,Data) data NullsOrder = NullsDefault | NullsFirst | NullsLast deriving (Show,Eq,Typeable,Data) data Distinct = Distinct | All deriving (Show,Eq,Typeable,Data) -- maybe should improve this, since you can have at least union -- distinct and union all just like select distinct and select all data CombineType = Except | Union | Intersect | UnionAll deriving (Show,Eq,Typeable,Data) data IntervalField = IntervalYear | IntervalMonth | IntervalDay | IntervalHour | IntervalMinute | IntervalSecond | IntervalYearToMonth | IntervalDayToHour | IntervalDayToMinute | IntervalDayToSecond | IntervalHourToMinute | IntervalHourToSecond | IntervalMinuteToSecond deriving (Show,Eq,Typeable,Data) data ExtractField = ExtractCentury | ExtractDay | ExtractDecade | ExtractDow | ExtractDoy | ExtractEpoch | ExtractHour | ExtractIsodow | ExtractIsoyear | ExtractMicroseconds | ExtractMillennium | ExtractMilliseconds | ExtractMinute | ExtractMonth | ExtractQuarter | ExtractSecond | ExtractTimezone | ExtractTimezoneHour | ExtractTimezoneMinute | ExtractWeek | ExtractYear deriving (Show,Eq,Typeable,Data) -- todo: this needs fixing, it is currently based on limited frame options data FrameClause = FrameUnboundedPreceding | FrameUnboundedFull | FrameRowsUnboundedPreceding deriving (Show,Eq,Typeable,Data) data OdbcLiteralType = OLDate | OLTime | OLTimestamp deriving (Show,Eq,Typeable,Data) {-# LINE 638 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 692 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data JoinType = Inner | LeftOuter| RightOuter | FullOuter | Cross deriving (Show,Eq,Typeable,Data) data JoinHint = Loop | Hash | Merge deriving (Show,Eq,Typeable,Data) data Natural = Natural | Unnatural deriving (Show,Eq,Typeable,Data) {-# LINE 648 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 710 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} -- | 'default' valued select, use for creating select values -- -- > makeSelect :: QueryExpr -- > makeSelect = Select -- > {ann = emptyAnnotation -- > ,selDistinct = All -- > ,selSelectList = (SelectList emptyAnnotation []) -- > ,selTref = [] -- > ,selWhere = Nothing -- > ,selGroupBy = [] -- > ,selHaving = Nothing -- > ,selOrderBy = [] -- > ,selLimit = Nothing -- > ,selOffset = Nothing -- > ,selOption = []} -- -- On its own, it isn't valid syntax: to use it you have to replace -- the select list at minimum -- -- use something like this -- -- > s = makeSelect {selSelectList = sl [se $ i "a"] -- > ,selTref = [tref "t"]} -- > where -- > a = emptyAnnotation -- > sl = SelectList a -- > se = SelExp a -- > i = Identifier a -- > tref t = Tref a (Name a [Nmc t]) makeSelect :: QueryExpr makeSelect = Select {ann = emptyAnnotation ,selDistinct = All ,selSelectList = (SelectList emptyAnnotation []) ,selTref = [] ,selWhere = Nothing ,selGroupBy = [] ,selHaving = Nothing ,selOrderBy = [] ,selLimit = Nothing ,selOffset = Nothing ,selOption = []} {-# LINE 695 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 1019 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data CopyFromSource = CopyFilename String | Stdin deriving (Show,Eq,Typeable,Data) data CopyToSource = CopyTable Name [NameComponent] | CopyQuery QueryExpr deriving (Show,Eq,Typeable,Data) data CopyFromOption = CopyFromFormat String | CopyFromDelimiter String | CopyFromErrorLog String | CopyFromErrorVerbosity Int | CopyFromParsers String | CopyFromDirectory | CopyFromOffset Integer | CopyFromLimit Integer | CopyFromErrorThreshold Int | CopyFromNewlineFormat String deriving (Show,Eq,Typeable,Data) data CopyToOption = CopyToFormat String | CopyToDelimiter String | CopyToErrorLog String | CopyToErrorVerbosity Int deriving (Show,Eq,Typeable,Data) {-# LINE 724 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 1110 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data TablePartitionDateTimeInterval = Year | Month | Day | Hour | Minute | Second | Millisecond deriving (Show,Eq,Typeable,Data) {-# LINE 730 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 1173 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data SetValue = SetStr Annotation String | SetId Annotation String | SetNum Annotation Double deriving (Show,Eq,Typeable,Data) data TriggerWhen = TriggerBefore | TriggerAfter deriving (Show,Eq,Typeable,Data) data TriggerEvent = TInsert| TUpdate | TDelete | AntiTriggerEvent String deriving (Show,Eq,Typeable,Data) data TriggerFire = EachRow | EachStatement deriving (Show,Eq,Typeable,Data) data DropType = Table | Domain | View | Type | Database | User | Login | Schema deriving (Show,Eq,Typeable,Data) data Cascade = Cascade | Restrict deriving (Show,Eq,Typeable,Data) data IfExists = Require | IfExists deriving (Show,Eq,Typeable,Data) data RestartIdentity = RestartIdentity | ContinueIdentity deriving (Show,Eq,Typeable,Data) {-# LINE 770 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 1216 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data Replace = Replace | NoReplace deriving (Show,Eq,Typeable,Data) data Volatility = Volatile | Stable | Immutable deriving (Show,Eq,Typeable,Data) -- todo: fix the fn body to support to support other languages -- just as as string for now -- probably change Language to be a string also data Language = Sql | Plpgsql deriving (Show,Eq,Typeable,Data) {-# LINE 786 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 1255 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data RaiseType = RNotice | RException | RError deriving (Show,Eq,Typeable,Data) {-# LINE 793 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 1269 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} data QueryHint = QueryHintPartitionGroup | QueryHintColumnarHostGroup deriving (Show,Eq,Typeable,Data) {-# LINE 800 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} {-# LINE 1375 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.ag" #-} -- TODO: move this somewhere better -- | run canonicalizeTypeName on all the TypeName nodes in an ast {-canonicalizeTypeNames :: Data a => Dialect -> a -> a canonicalizeTypeNames d = (transformBi $ \x -> case x of ScalarType s -> ScalarType $ canonicalizeTypeName d s x' -> x') . (transformBi $ \x -> case x of SimpleTypeName a tn -> SimpleTypeName a (c tn) PrecTypeName a tn i -> PrecTypeName a (c tn) i Prec2TypeName a tn i i1 -> Prec2TypeName a (c tn) i i1 x' -> x') where c (Name a [Nmc nc]) = Name a [Nmc $ T.unpack $ canonicalizeTypeName d $ T.pack nc] c z = z-} {-# LINE 822 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} -- AlterColumnAction ------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterColumnAction originalTree : AlterColumnAction alternatives: alternative SetDataType: child ann : Annotation child typ : TypeName visit 0: local annotatedTree : _ local originalTree : _ alternative SetNotNull: child ann : Annotation visit 0: local annotatedTree : _ local originalTree : _ alternative DropNotNull: child ann : Annotation visit 0: local annotatedTree : _ local originalTree : _ alternative SetDefault: child ann : Annotation child def : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative DropDefault: child ann : Annotation visit 0: local annotatedTree : _ local originalTree : _ -} data AlterColumnAction = SetDataType (Annotation) (TypeName) | SetNotNull (Annotation) | DropNotNull (Annotation) | SetDefault (Annotation) (ScalarExpr) | DropDefault (Annotation) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AlterColumnAction :: AlterColumnAction -> T_AlterColumnAction _sem_AlterColumnAction (SetDataType _ann _typ) = (_sem_AlterColumnAction_SetDataType (_sem_Annotation _ann) (_sem_TypeName _typ)) _sem_AlterColumnAction (SetNotNull _ann) = (_sem_AlterColumnAction_SetNotNull (_sem_Annotation _ann)) _sem_AlterColumnAction (DropNotNull _ann) = (_sem_AlterColumnAction_DropNotNull (_sem_Annotation _ann)) _sem_AlterColumnAction (SetDefault _ann _def) = (_sem_AlterColumnAction_SetDefault (_sem_Annotation _ann) (_sem_ScalarExpr _def)) _sem_AlterColumnAction (DropDefault _ann) = (_sem_AlterColumnAction_DropDefault (_sem_Annotation _ann)) -- semantic domain type T_AlterColumnAction = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterColumnAction,AlterColumnAction) data Inh_AlterColumnAction = Inh_AlterColumnAction {_cat_Inh_AlterColumnAction :: Catalog,_flags_Inh_AlterColumnAction :: TypeCheckFlags,_imCast_Inh_AlterColumnAction :: (Maybe TypeExtra)} data Syn_AlterColumnAction = Syn_AlterColumnAction {_annotatedTree_Syn_AlterColumnAction :: AlterColumnAction,_originalTree_Syn_AlterColumnAction :: AlterColumnAction} _wrap_AlterColumnAction :: T_AlterColumnAction -> Inh_AlterColumnAction -> Syn_AlterColumnAction _wrap_AlterColumnAction sem (Inh_AlterColumnAction _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterColumnAction _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterColumnAction_SetDataType :: T_Annotation -> T_TypeName -> T_AlterColumnAction _sem_AlterColumnAction_SetDataType ann_ typ_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterColumnAction _lhsOoriginalTree :: AlterColumnAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 24, column 37) _annOtpe = ({-# LINE 24 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 919 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetDataType _annIannotatedTree _typIannotatedTree {-# LINE 925 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetDataType _annIoriginalTree _typIoriginalTree {-# LINE 931 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 937 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 943 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 949 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 955 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 961 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 967 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 973 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 979 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterColumnAction_SetNotNull :: T_Annotation -> T_AlterColumnAction _sem_AlterColumnAction_SetNotNull ann_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterColumnAction _lhsOoriginalTree :: AlterColumnAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 29, column 36) _annOtpe = ({-# LINE 29 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1004 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetNotNull _annIannotatedTree {-# LINE 1010 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetNotNull _annIoriginalTree {-# LINE 1016 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1022 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1028 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1034 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1040 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1046 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterColumnAction_DropNotNull :: T_Annotation -> T_AlterColumnAction _sem_AlterColumnAction_DropNotNull ann_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterColumnAction _lhsOoriginalTree :: AlterColumnAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 23, column 37) _annOtpe = ({-# LINE 23 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1069 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropNotNull _annIannotatedTree {-# LINE 1075 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropNotNull _annIoriginalTree {-# LINE 1081 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1087 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1093 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1099 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1105 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1111 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterColumnAction_SetDefault :: T_Annotation -> T_ScalarExpr -> T_AlterColumnAction _sem_AlterColumnAction_SetDefault ann_ def_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _defOdownEnv :: Environment _defOexpectedCast :: Bool _defOexpectedType :: (Maybe TypeExtra) _defOodbcFunction :: Bool _defOassignmentCastContext :: Bool _lhsOannotatedTree :: AlterColumnAction _lhsOoriginalTree :: AlterColumnAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _defOcat :: Catalog _defOflags :: TypeCheckFlags _defOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _defIannotatedTree :: ScalarExpr _defIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _defIoriginalTree :: ScalarExpr _defIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 25, column 36) _annOtpe = ({-# LINE 25 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1147 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 26, column 36) _defOdownEnv = ({-# LINE 26 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 1153 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 27, column 36) _defOexpectedCast = ({-# LINE 27 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 1159 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 28, column 36) _defOexpectedType = ({-# LINE 28 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 1165 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 131, column 18) _defOodbcFunction = ({-# LINE 131 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 1171 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 806, column 36) _defOassignmentCastContext = ({-# LINE 806 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 1177 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetDefault _annIannotatedTree _defIannotatedTree {-# LINE 1183 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetDefault _annIoriginalTree _defIoriginalTree {-# LINE 1189 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1195 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1201 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1207 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1213 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1219 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _defOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1225 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _defOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1231 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _defOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1237 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _defIannotatedTree,_defIcolExprs,_defIoriginalTree,_defIupType) = def_ _defOassignmentCastContext _defOcat _defOdownEnv _defOexpectedCast _defOexpectedType _defOflags _defOimCast _defOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterColumnAction_DropDefault :: T_Annotation -> T_AlterColumnAction _sem_AlterColumnAction_DropDefault ann_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterColumnAction _lhsOoriginalTree :: AlterColumnAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 22, column 37) _annOtpe = ({-# LINE 22 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1262 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropDefault _annIannotatedTree {-# LINE 1268 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropDefault _annIoriginalTree {-# LINE 1274 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1280 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1286 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1292 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1298 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1304 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterDatabaseOperation -------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterDatabaseOperation originalTree : AlterDatabaseOperation alternatives: alternative RenameDatabase: child ann : Annotation child newName : Name visit 0: local annotatedTree : _ local originalTree : _ -} data AlterDatabaseOperation = RenameDatabase (Annotation) (Name) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AlterDatabaseOperation :: AlterDatabaseOperation -> T_AlterDatabaseOperation _sem_AlterDatabaseOperation (RenameDatabase _ann _newName) = (_sem_AlterDatabaseOperation_RenameDatabase (_sem_Annotation _ann) (_sem_Name _newName)) -- semantic domain type T_AlterDatabaseOperation = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterDatabaseOperation,AlterDatabaseOperation) data Inh_AlterDatabaseOperation = Inh_AlterDatabaseOperation {_cat_Inh_AlterDatabaseOperation :: Catalog,_flags_Inh_AlterDatabaseOperation :: TypeCheckFlags,_imCast_Inh_AlterDatabaseOperation :: (Maybe TypeExtra)} data Syn_AlterDatabaseOperation = Syn_AlterDatabaseOperation {_annotatedTree_Syn_AlterDatabaseOperation :: AlterDatabaseOperation,_originalTree_Syn_AlterDatabaseOperation :: AlterDatabaseOperation} _wrap_AlterDatabaseOperation :: T_AlterDatabaseOperation -> Inh_AlterDatabaseOperation -> Syn_AlterDatabaseOperation _wrap_AlterDatabaseOperation sem (Inh_AlterDatabaseOperation _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterDatabaseOperation _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterDatabaseOperation_RenameDatabase :: T_Annotation -> T_Name -> T_AlterDatabaseOperation _sem_AlterDatabaseOperation_RenameDatabase ann_ newName_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _newNameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterDatabaseOperation _lhsOoriginalTree :: AlterDatabaseOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _newNameOcat :: Catalog _newNameOflags :: TypeCheckFlags _newNameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _newNameIannotatedTree :: Name _newNameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 30, column 45) _annOtpe = ({-# LINE 30 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1372 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 31, column 45) _newNameOtpe = ({-# LINE 31 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1378 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RenameDatabase _annIannotatedTree _newNameIannotatedTree {-# LINE 1384 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RenameDatabase _annIoriginalTree _newNameIoriginalTree {-# LINE 1390 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1396 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1402 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1408 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1414 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1420 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1426 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1432 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1438 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _newNameIannotatedTree,_newNameIoriginalTree) = newName_ _newNameOcat _newNameOflags _newNameOimCast _newNameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterSchemaOperation ---------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterSchemaOperation originalTree : AlterSchemaOperation alternatives: alternative AlterSchemaName: child ann : Annotation child newName : {NameComponent} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSchemaOwner: child ann : Annotation child newName : Name visit 0: local annotatedTree : _ local originalTree : _ -} data AlterSchemaOperation = AlterSchemaName (Annotation) (NameComponent) | AlterSchemaOwner (Annotation) (Name) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AlterSchemaOperation :: AlterSchemaOperation -> T_AlterSchemaOperation _sem_AlterSchemaOperation (AlterSchemaName _ann _newName) = (_sem_AlterSchemaOperation_AlterSchemaName (_sem_Annotation _ann) _newName) _sem_AlterSchemaOperation (AlterSchemaOwner _ann _newName) = (_sem_AlterSchemaOperation_AlterSchemaOwner (_sem_Annotation _ann) (_sem_Name _newName)) -- semantic domain type T_AlterSchemaOperation = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterSchemaOperation,AlterSchemaOperation) data Inh_AlterSchemaOperation = Inh_AlterSchemaOperation {_cat_Inh_AlterSchemaOperation :: Catalog,_flags_Inh_AlterSchemaOperation :: TypeCheckFlags,_imCast_Inh_AlterSchemaOperation :: (Maybe TypeExtra)} data Syn_AlterSchemaOperation = Syn_AlterSchemaOperation {_annotatedTree_Syn_AlterSchemaOperation :: AlterSchemaOperation,_originalTree_Syn_AlterSchemaOperation :: AlterSchemaOperation} _wrap_AlterSchemaOperation :: T_AlterSchemaOperation -> Inh_AlterSchemaOperation -> Syn_AlterSchemaOperation _wrap_AlterSchemaOperation sem (Inh_AlterSchemaOperation _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterSchemaOperation _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterSchemaOperation_AlterSchemaName :: T_Annotation -> NameComponent -> T_AlterSchemaOperation _sem_AlterSchemaOperation_AlterSchemaName ann_ newName_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSchemaOperation _lhsOoriginalTree :: AlterSchemaOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 32, column 44) _annOtpe = ({-# LINE 32 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1511 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSchemaName _annIannotatedTree newName_ {-# LINE 1517 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSchemaName _annIoriginalTree newName_ {-# LINE 1523 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1541 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSchemaOperation_AlterSchemaOwner :: T_Annotation -> T_Name -> T_AlterSchemaOperation _sem_AlterSchemaOperation_AlterSchemaOwner ann_ newName_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _newNameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSchemaOperation _lhsOoriginalTree :: AlterSchemaOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _newNameOcat :: Catalog _newNameOflags :: TypeCheckFlags _newNameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _newNameIannotatedTree :: Name _newNameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 33, column 45) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1583 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 34, column 45) _newNameOtpe = ({-# LINE 34 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1589 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSchemaOwner _annIannotatedTree _newNameIannotatedTree {-# LINE 1595 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSchemaOwner _annIoriginalTree _newNameIoriginalTree {-# LINE 1601 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1607 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1613 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1619 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1625 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1631 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1637 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1643 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1649 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _newNameIannotatedTree,_newNameIoriginalTree) = newName_ _newNameOcat _newNameOflags _newNameOimCast _newNameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterSequenceAction ----------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterSequenceAction originalTree : AlterSequenceAction alternatives: alternative AlterSequenceIncrement: child ann : Annotation child incr : {Integer} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequenceMin: child ann : Annotation child min : {Maybe Integer} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequenceMax: child ann : Annotation child max : {Maybe Integer} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequenceStart: child ann : Annotation child start : {Integer} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequenceRestart: child ann : Annotation child restart : {Maybe Integer} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequenceCache: child ann : Annotation child cache : {Integer} visit 0: local annotatedTree : _ local originalTree : _ -} data AlterSequenceAction = AlterSequenceIncrement (Annotation) (Integer) | AlterSequenceMin (Annotation) ((Maybe Integer)) | AlterSequenceMax (Annotation) ((Maybe Integer)) | AlterSequenceStart (Annotation) (Integer) | AlterSequenceRestart (Annotation) ((Maybe Integer)) | AlterSequenceCache (Annotation) (Integer) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AlterSequenceAction :: AlterSequenceAction -> T_AlterSequenceAction _sem_AlterSequenceAction (AlterSequenceIncrement _ann _incr) = (_sem_AlterSequenceAction_AlterSequenceIncrement (_sem_Annotation _ann) _incr) _sem_AlterSequenceAction (AlterSequenceMin _ann _min) = (_sem_AlterSequenceAction_AlterSequenceMin (_sem_Annotation _ann) _min) _sem_AlterSequenceAction (AlterSequenceMax _ann _max) = (_sem_AlterSequenceAction_AlterSequenceMax (_sem_Annotation _ann) _max) _sem_AlterSequenceAction (AlterSequenceStart _ann _start) = (_sem_AlterSequenceAction_AlterSequenceStart (_sem_Annotation _ann) _start) _sem_AlterSequenceAction (AlterSequenceRestart _ann _restart) = (_sem_AlterSequenceAction_AlterSequenceRestart (_sem_Annotation _ann) _restart) _sem_AlterSequenceAction (AlterSequenceCache _ann _cache) = (_sem_AlterSequenceAction_AlterSequenceCache (_sem_Annotation _ann) _cache) -- semantic domain type T_AlterSequenceAction = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterSequenceAction,AlterSequenceAction) data Inh_AlterSequenceAction = Inh_AlterSequenceAction {_cat_Inh_AlterSequenceAction :: Catalog,_flags_Inh_AlterSequenceAction :: TypeCheckFlags,_imCast_Inh_AlterSequenceAction :: (Maybe TypeExtra)} data Syn_AlterSequenceAction = Syn_AlterSequenceAction {_annotatedTree_Syn_AlterSequenceAction :: AlterSequenceAction,_originalTree_Syn_AlterSequenceAction :: AlterSequenceAction} _wrap_AlterSequenceAction :: T_AlterSequenceAction -> Inh_AlterSequenceAction -> Syn_AlterSequenceAction _wrap_AlterSequenceAction sem (Inh_AlterSequenceAction _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterSequenceAction _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterSequenceAction_AlterSequenceIncrement :: T_Annotation -> Integer -> T_AlterSequenceAction _sem_AlterSequenceAction_AlterSequenceIncrement ann_ incr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceAction _lhsOoriginalTree :: AlterSequenceAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 35, column 50) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1758 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceIncrement _annIannotatedTree incr_ {-# LINE 1764 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceIncrement _annIoriginalTree incr_ {-# LINE 1770 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1776 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1782 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1788 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1794 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1800 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceAction_AlterSequenceMin :: T_Annotation -> (Maybe Integer) -> T_AlterSequenceAction _sem_AlterSequenceAction_AlterSequenceMin ann_ min_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceAction _lhsOoriginalTree :: AlterSequenceAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 36, column 44) _annOtpe = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1824 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceMin _annIannotatedTree min_ {-# LINE 1830 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceMin _annIoriginalTree min_ {-# LINE 1836 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1842 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1848 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1854 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1860 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1866 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceAction_AlterSequenceMax :: T_Annotation -> (Maybe Integer) -> T_AlterSequenceAction _sem_AlterSequenceAction_AlterSequenceMax ann_ max_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceAction _lhsOoriginalTree :: AlterSequenceAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 37, column 44) _annOtpe = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1890 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceMax _annIannotatedTree max_ {-# LINE 1896 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceMax _annIoriginalTree max_ {-# LINE 1902 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1908 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1914 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1920 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1926 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1932 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceAction_AlterSequenceStart :: T_Annotation -> Integer -> T_AlterSequenceAction _sem_AlterSequenceAction_AlterSequenceStart ann_ start_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceAction _lhsOoriginalTree :: AlterSequenceAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 38, column 46) _annOtpe = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 1956 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceStart _annIannotatedTree start_ {-# LINE 1962 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceStart _annIoriginalTree start_ {-# LINE 1968 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 1974 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 1980 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 1986 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 1992 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 1998 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceAction_AlterSequenceRestart :: T_Annotation -> (Maybe Integer) -> T_AlterSequenceAction _sem_AlterSequenceAction_AlterSequenceRestart ann_ restart_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceAction _lhsOoriginalTree :: AlterSequenceAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 39, column 48) _annOtpe = ({-# LINE 39 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2022 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceRestart _annIannotatedTree restart_ {-# LINE 2028 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceRestart _annIoriginalTree restart_ {-# LINE 2034 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2040 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2046 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2052 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2058 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2064 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceAction_AlterSequenceCache :: T_Annotation -> Integer -> T_AlterSequenceAction _sem_AlterSequenceAction_AlterSequenceCache ann_ cache_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceAction _lhsOoriginalTree :: AlterSequenceAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 40, column 46) _annOtpe = ({-# LINE 40 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2088 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceCache _annIannotatedTree cache_ {-# LINE 2094 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceCache _annIoriginalTree cache_ {-# LINE 2100 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2106 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2112 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2118 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2124 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2130 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterSequenceActionList ------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterSequenceActionList originalTree : AlterSequenceActionList alternatives: alternative Cons: child hd : AlterSequenceAction child tl : AlterSequenceActionList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type AlterSequenceActionList = [AlterSequenceAction] -- cata _sem_AlterSequenceActionList :: AlterSequenceActionList -> T_AlterSequenceActionList _sem_AlterSequenceActionList list = (Prelude.foldr _sem_AlterSequenceActionList_Cons _sem_AlterSequenceActionList_Nil (Prelude.map _sem_AlterSequenceAction list)) -- semantic domain type T_AlterSequenceActionList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterSequenceActionList,AlterSequenceActionList) data Inh_AlterSequenceActionList = Inh_AlterSequenceActionList {_cat_Inh_AlterSequenceActionList :: Catalog,_flags_Inh_AlterSequenceActionList :: TypeCheckFlags,_imCast_Inh_AlterSequenceActionList :: (Maybe TypeExtra)} data Syn_AlterSequenceActionList = Syn_AlterSequenceActionList {_annotatedTree_Syn_AlterSequenceActionList :: AlterSequenceActionList,_originalTree_Syn_AlterSequenceActionList :: AlterSequenceActionList} _wrap_AlterSequenceActionList :: T_AlterSequenceActionList -> Inh_AlterSequenceActionList -> Syn_AlterSequenceActionList _wrap_AlterSequenceActionList sem (Inh_AlterSequenceActionList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterSequenceActionList _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterSequenceActionList_Cons :: T_AlterSequenceAction -> T_AlterSequenceActionList -> T_AlterSequenceActionList _sem_AlterSequenceActionList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: AlterSequenceActionList _lhsOoriginalTree :: AlterSequenceActionList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: AlterSequenceAction _hdIoriginalTree :: AlterSequenceAction _tlIannotatedTree :: AlterSequenceActionList _tlIoriginalTree :: AlterSequenceActionList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 2199 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 2205 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2211 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2217 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2223 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2229 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2235 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2241 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2247 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2253 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceActionList_Nil :: T_AlterSequenceActionList _sem_AlterSequenceActionList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: AlterSequenceActionList _lhsOoriginalTree :: AlterSequenceActionList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 2271 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 2277 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2283 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2289 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterSequenceOperation -------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterSequenceOperation originalTree : AlterSequenceOperation alternatives: alternative AlterSequenceOwned: child ann : Annotation child owned : Name visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequenceRename: child ann : Annotation child name : Name visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequenceActions: child ann : Annotation child actions : AlterSequenceActionList visit 0: local annotatedTree : _ local originalTree : _ -} data AlterSequenceOperation = AlterSequenceOwned (Annotation) (Name) | AlterSequenceRename (Annotation) (Name) | AlterSequenceActions (Annotation) (AlterSequenceActionList) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AlterSequenceOperation :: AlterSequenceOperation -> T_AlterSequenceOperation _sem_AlterSequenceOperation (AlterSequenceOwned _ann _owned) = (_sem_AlterSequenceOperation_AlterSequenceOwned (_sem_Annotation _ann) (_sem_Name _owned)) _sem_AlterSequenceOperation (AlterSequenceRename _ann _name) = (_sem_AlterSequenceOperation_AlterSequenceRename (_sem_Annotation _ann) (_sem_Name _name)) _sem_AlterSequenceOperation (AlterSequenceActions _ann _actions) = (_sem_AlterSequenceOperation_AlterSequenceActions (_sem_Annotation _ann) (_sem_AlterSequenceActionList _actions)) -- semantic domain type T_AlterSequenceOperation = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterSequenceOperation,AlterSequenceOperation) data Inh_AlterSequenceOperation = Inh_AlterSequenceOperation {_cat_Inh_AlterSequenceOperation :: Catalog,_flags_Inh_AlterSequenceOperation :: TypeCheckFlags,_imCast_Inh_AlterSequenceOperation :: (Maybe TypeExtra)} data Syn_AlterSequenceOperation = Syn_AlterSequenceOperation {_annotatedTree_Syn_AlterSequenceOperation :: AlterSequenceOperation,_originalTree_Syn_AlterSequenceOperation :: AlterSequenceOperation} _wrap_AlterSequenceOperation :: T_AlterSequenceOperation -> Inh_AlterSequenceOperation -> Syn_AlterSequenceOperation _wrap_AlterSequenceOperation sem (Inh_AlterSequenceOperation _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterSequenceOperation _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterSequenceOperation_AlterSequenceOwned :: T_Annotation -> T_Name -> T_AlterSequenceOperation _sem_AlterSequenceOperation_AlterSequenceOwned ann_ owned_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _ownedOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceOperation _lhsOoriginalTree :: AlterSequenceOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _ownedOcat :: Catalog _ownedOflags :: TypeCheckFlags _ownedOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _ownedIannotatedTree :: Name _ownedIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 41, column 49) _annOtpe = ({-# LINE 41 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2373 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 42, column 49) _ownedOtpe = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2379 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceOwned _annIannotatedTree _ownedIannotatedTree {-# LINE 2385 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceOwned _annIoriginalTree _ownedIoriginalTree {-# LINE 2391 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2397 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2403 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2409 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2415 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2421 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _ownedOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2427 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _ownedOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2433 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _ownedOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2439 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _ownedIannotatedTree,_ownedIoriginalTree) = owned_ _ownedOcat _ownedOflags _ownedOimCast _ownedOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceOperation_AlterSequenceRename :: T_Annotation -> T_Name -> T_AlterSequenceOperation _sem_AlterSequenceOperation_AlterSequenceRename ann_ name_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceOperation _lhsOoriginalTree :: AlterSequenceOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 43, column 50) _annOtpe = ({-# LINE 43 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2471 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 44, column 50) _nameOtpe = ({-# LINE 44 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2477 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceRename _annIannotatedTree _nameIannotatedTree {-# LINE 2483 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceRename _annIoriginalTree _nameIoriginalTree {-# LINE 2489 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2495 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2501 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2507 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2513 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2519 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2525 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2531 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2537 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterSequenceOperation_AlterSequenceActions :: T_Annotation -> T_AlterSequenceActionList -> T_AlterSequenceOperation _sem_AlterSequenceOperation_AlterSequenceActions ann_ actions_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterSequenceOperation _lhsOoriginalTree :: AlterSequenceOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _actionsOcat :: Catalog _actionsOflags :: TypeCheckFlags _actionsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _actionsIannotatedTree :: AlterSequenceActionList _actionsIoriginalTree :: AlterSequenceActionList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 45, column 51) _annOtpe = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2568 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceActions _annIannotatedTree _actionsIannotatedTree {-# LINE 2574 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequenceActions _annIoriginalTree _actionsIoriginalTree {-# LINE 2580 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2586 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2592 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2598 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2604 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2610 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actionsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2616 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actionsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2622 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actionsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2628 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _actionsIannotatedTree,_actionsIoriginalTree) = actions_ _actionsOcat _actionsOflags _actionsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterTableAction -------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterTableAction originalTree : AlterTableAction alternatives: alternative AddColumn: child ann : Annotation child att : AttributeDef visit 0: local annotatedTree : _ local originalTree : _ alternative DropColumn: child ann : Annotation child nm : {NameComponent} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterColumn: child ann : Annotation child nm : {NameComponent} child act : AlterColumnAction visit 0: local annotatedTree : _ local originalTree : _ alternative AddConstraint: child ann : Annotation child con : Constraint visit 0: local annotatedTree : _ local originalTree : _ -} data AlterTableAction = AddColumn (Annotation) (AttributeDef) | DropColumn (Annotation) (NameComponent) | AlterColumn (Annotation) (NameComponent) (AlterColumnAction) | AddConstraint (Annotation) (Constraint) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AlterTableAction :: AlterTableAction -> T_AlterTableAction _sem_AlterTableAction (AddColumn _ann _att) = (_sem_AlterTableAction_AddColumn (_sem_Annotation _ann) (_sem_AttributeDef _att)) _sem_AlterTableAction (DropColumn _ann _nm) = (_sem_AlterTableAction_DropColumn (_sem_Annotation _ann) _nm) _sem_AlterTableAction (AlterColumn _ann _nm _act) = (_sem_AlterTableAction_AlterColumn (_sem_Annotation _ann) _nm (_sem_AlterColumnAction _act)) _sem_AlterTableAction (AddConstraint _ann _con) = (_sem_AlterTableAction_AddConstraint (_sem_Annotation _ann) (_sem_Constraint _con)) -- semantic domain type T_AlterTableAction = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterTableAction,AlterTableAction) data Inh_AlterTableAction = Inh_AlterTableAction {_cat_Inh_AlterTableAction :: Catalog,_flags_Inh_AlterTableAction :: TypeCheckFlags,_imCast_Inh_AlterTableAction :: (Maybe TypeExtra)} data Syn_AlterTableAction = Syn_AlterTableAction {_annotatedTree_Syn_AlterTableAction :: AlterTableAction,_originalTree_Syn_AlterTableAction :: AlterTableAction} _wrap_AlterTableAction :: T_AlterTableAction -> Inh_AlterTableAction -> Syn_AlterTableAction _wrap_AlterTableAction sem (Inh_AlterTableAction _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterTableAction _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterTableAction_AddColumn :: T_Annotation -> T_AttributeDef -> T_AlterTableAction _sem_AlterTableAction_AddColumn ann_ att_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterTableAction _lhsOoriginalTree :: AlterTableAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _attOcat :: Catalog _attOflags :: TypeCheckFlags _attOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _attIannotatedTree :: AttributeDef _attIoriginalTree :: AttributeDef -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 46, column 34) _annOtpe = ({-# LINE 46 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2725 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AddColumn _annIannotatedTree _attIannotatedTree {-# LINE 2731 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AddColumn _annIoriginalTree _attIoriginalTree {-# LINE 2737 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2743 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2749 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2755 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2761 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2767 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2773 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2779 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2785 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _attIannotatedTree,_attIoriginalTree) = att_ _attOcat _attOflags _attOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterTableAction_DropColumn :: T_Annotation -> NameComponent -> T_AlterTableAction _sem_AlterTableAction_DropColumn ann_ nm_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterTableAction _lhsOoriginalTree :: AlterTableAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 49, column 35) _annOtpe = ({-# LINE 49 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2811 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropColumn _annIannotatedTree nm_ {-# LINE 2817 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropColumn _annIoriginalTree nm_ {-# LINE 2823 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2829 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2835 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2841 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2847 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2853 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterTableAction_AlterColumn :: T_Annotation -> NameComponent -> T_AlterColumnAction -> T_AlterTableAction _sem_AlterTableAction_AlterColumn ann_ nm_ act_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterTableAction _lhsOoriginalTree :: AlterTableAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _actOcat :: Catalog _actOflags :: TypeCheckFlags _actOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _actIannotatedTree :: AlterColumnAction _actIoriginalTree :: AlterColumnAction -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 48, column 36) _annOtpe = ({-# LINE 48 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2883 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterColumn _annIannotatedTree nm_ _actIannotatedTree {-# LINE 2889 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterColumn _annIoriginalTree nm_ _actIoriginalTree {-# LINE 2895 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2901 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2907 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2913 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2919 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2925 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 2931 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 2937 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 2943 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _actIannotatedTree,_actIoriginalTree) = act_ _actOcat _actOflags _actOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterTableAction_AddConstraint :: T_Annotation -> T_Constraint -> T_AlterTableAction _sem_AlterTableAction_AddConstraint ann_ con_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterTableAction _lhsOoriginalTree :: AlterTableAction _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _conOcat :: Catalog _conOflags :: TypeCheckFlags _conOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _conIannotatedTree :: Constraint _conIoriginalTree :: Constraint -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 47, column 38) _annOtpe = ({-# LINE 47 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 2974 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AddConstraint _annIannotatedTree _conIannotatedTree {-# LINE 2980 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AddConstraint _annIoriginalTree _conIoriginalTree {-# LINE 2986 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 2992 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 2998 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3004 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3010 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3016 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _conOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3022 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _conOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3028 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _conOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3034 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _conIannotatedTree,_conIoriginalTree) = con_ _conOcat _conOflags _conOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterTableActionList ---------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterTableActionList originalTree : AlterTableActionList alternatives: alternative Cons: child hd : AlterTableAction child tl : AlterTableActionList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type AlterTableActionList = [AlterTableAction] -- cata _sem_AlterTableActionList :: AlterTableActionList -> T_AlterTableActionList _sem_AlterTableActionList list = (Prelude.foldr _sem_AlterTableActionList_Cons _sem_AlterTableActionList_Nil (Prelude.map _sem_AlterTableAction list)) -- semantic domain type T_AlterTableActionList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterTableActionList,AlterTableActionList) data Inh_AlterTableActionList = Inh_AlterTableActionList {_cat_Inh_AlterTableActionList :: Catalog,_flags_Inh_AlterTableActionList :: TypeCheckFlags,_imCast_Inh_AlterTableActionList :: (Maybe TypeExtra)} data Syn_AlterTableActionList = Syn_AlterTableActionList {_annotatedTree_Syn_AlterTableActionList :: AlterTableActionList,_originalTree_Syn_AlterTableActionList :: AlterTableActionList} _wrap_AlterTableActionList :: T_AlterTableActionList -> Inh_AlterTableActionList -> Syn_AlterTableActionList _wrap_AlterTableActionList sem (Inh_AlterTableActionList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterTableActionList _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterTableActionList_Cons :: T_AlterTableAction -> T_AlterTableActionList -> T_AlterTableActionList _sem_AlterTableActionList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: AlterTableActionList _lhsOoriginalTree :: AlterTableActionList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: AlterTableAction _hdIoriginalTree :: AlterTableAction _tlIannotatedTree :: AlterTableActionList _tlIoriginalTree :: AlterTableActionList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 3105 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 3111 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3117 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3123 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3129 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3135 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3141 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3147 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3153 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3159 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterTableActionList_Nil :: T_AlterTableActionList _sem_AlterTableActionList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: AlterTableActionList _lhsOoriginalTree :: AlterTableActionList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 3177 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 3183 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3189 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3195 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AlterTableOperation ----------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AlterTableOperation originalTree : AlterTableOperation alternatives: alternative RenameTable: child ann : Annotation child newName : Name visit 0: local annotatedTree : _ local originalTree : _ alternative RenameColumn: child ann : Annotation child oldName : {NameComponent} child newName : {NameComponent} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterTableActions: child ann : Annotation child actions : AlterTableActionList visit 0: local annotatedTree : _ local originalTree : _ -} data AlterTableOperation = RenameTable (Annotation) (Name) | RenameColumn (Annotation) (NameComponent) (NameComponent) | AlterTableActions (Annotation) (AlterTableActionList) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AlterTableOperation :: AlterTableOperation -> T_AlterTableOperation _sem_AlterTableOperation (RenameTable _ann _newName) = (_sem_AlterTableOperation_RenameTable (_sem_Annotation _ann) (_sem_Name _newName)) _sem_AlterTableOperation (RenameColumn _ann _oldName _newName) = (_sem_AlterTableOperation_RenameColumn (_sem_Annotation _ann) _oldName _newName) _sem_AlterTableOperation (AlterTableActions _ann _actions) = (_sem_AlterTableOperation_AlterTableActions (_sem_Annotation _ann) (_sem_AlterTableActionList _actions)) -- semantic domain type T_AlterTableOperation = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AlterTableOperation,AlterTableOperation) data Inh_AlterTableOperation = Inh_AlterTableOperation {_cat_Inh_AlterTableOperation :: Catalog,_flags_Inh_AlterTableOperation :: TypeCheckFlags,_imCast_Inh_AlterTableOperation :: (Maybe TypeExtra)} data Syn_AlterTableOperation = Syn_AlterTableOperation {_annotatedTree_Syn_AlterTableOperation :: AlterTableOperation,_originalTree_Syn_AlterTableOperation :: AlterTableOperation} _wrap_AlterTableOperation :: T_AlterTableOperation -> Inh_AlterTableOperation -> Syn_AlterTableOperation _wrap_AlterTableOperation sem (Inh_AlterTableOperation _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AlterTableOperation _lhsOannotatedTree _lhsOoriginalTree)) _sem_AlterTableOperation_RenameTable :: T_Annotation -> T_Name -> T_AlterTableOperation _sem_AlterTableOperation_RenameTable ann_ newName_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _newNameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterTableOperation _lhsOoriginalTree :: AlterTableOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _newNameOcat :: Catalog _newNameOflags :: TypeCheckFlags _newNameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _newNameIannotatedTree :: Name _newNameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 52, column 39) _annOtpe = ({-# LINE 52 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 3280 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 53, column 39) _newNameOtpe = ({-# LINE 53 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 3286 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RenameTable _annIannotatedTree _newNameIannotatedTree {-# LINE 3292 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RenameTable _annIoriginalTree _newNameIoriginalTree {-# LINE 3298 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3304 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3310 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3316 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3322 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3328 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3334 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3340 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _newNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3346 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _newNameIannotatedTree,_newNameIoriginalTree) = newName_ _newNameOcat _newNameOflags _newNameOimCast _newNameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterTableOperation_RenameColumn :: T_Annotation -> NameComponent -> NameComponent -> T_AlterTableOperation _sem_AlterTableOperation_RenameColumn ann_ oldName_ newName_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterTableOperation _lhsOoriginalTree :: AlterTableOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 51, column 40) _annOtpe = ({-# LINE 51 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 3373 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RenameColumn _annIannotatedTree oldName_ newName_ {-# LINE 3379 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RenameColumn _annIoriginalTree oldName_ newName_ {-# LINE 3385 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3391 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3397 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3403 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3409 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3415 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AlterTableOperation_AlterTableActions :: T_Annotation -> T_AlterTableActionList -> T_AlterTableOperation _sem_AlterTableOperation_AlterTableActions ann_ actions_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: AlterTableOperation _lhsOoriginalTree :: AlterTableOperation _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _actionsOcat :: Catalog _actionsOflags :: TypeCheckFlags _actionsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _actionsIannotatedTree :: AlterTableActionList _actionsIoriginalTree :: AlterTableActionList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 50, column 45) _annOtpe = ({-# LINE 50 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 3444 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterTableActions _annIannotatedTree _actionsIannotatedTree {-# LINE 3450 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterTableActions _annIoriginalTree _actionsIoriginalTree {-# LINE 3456 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3462 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3468 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3474 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3480 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3486 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actionsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3492 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actionsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3498 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _actionsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3504 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _actionsIannotatedTree,_actionsIoriginalTree) = actions_ _actionsOcat _actionsOflags _actionsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- Annotation -------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra tpe : Either [TypeError] TypeExtra synthesized attributes: annotatedTree : Annotation originalTree : Annotation alternatives: alternative Annotation: child anSrc : {Maybe SourcePosition} child anType : {Maybe T.TypeExtra} child anErrs : {[T.TypeError]} child anImplicitCast : {Maybe T.TypeExtra} child anCatUpd : {[C.CatalogUpdate]} visit 0: local annotatedTree : _ local originalTree : _ -} -- | Annotation type - one of these is attached to most of the -- data types used in the ast. -- the fields in order are: data Annotation = Annotation { -- | source position for this node anSrc :: ( Maybe SourcePosition) -- | type of the node, 'Nothing' if the tree hasn't been typechecked or if a type error elsewhere prevents determining this node's type ,anType :: ( Maybe T.TypeExtra) -- | any type errors ,anErrs :: ( [T.TypeError]) -- | if an implicit cast is needed between this node an its parent, this the target type of cast. If no implicit cast is needed, this is Nothing ,anImplicitCast :: ( Maybe T.TypeExtra) -- | any catalog updates that a statement produces, used only for ddl Statements ,anCatUpd :: ( [C.CatalogUpdate]) } deriving (Eq,Show,Data,Typeable) -- cata _sem_Annotation :: Annotation -> T_Annotation _sem_Annotation (Annotation _anSrc _anType _anErrs _anImplicitCast _anCatUpd) = (_sem_Annotation_Annotation _anSrc _anType _anErrs _anImplicitCast _anCatUpd) -- semantic domain type T_Annotation = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> (Either [TypeError] TypeExtra) -> ( Annotation,Annotation) data Inh_Annotation = Inh_Annotation {_cat_Inh_Annotation :: Catalog,_flags_Inh_Annotation :: TypeCheckFlags,_imCast_Inh_Annotation :: (Maybe TypeExtra),_tpe_Inh_Annotation :: (Either [TypeError] TypeExtra)} data Syn_Annotation = Syn_Annotation {_annotatedTree_Syn_Annotation :: Annotation,_originalTree_Syn_Annotation :: Annotation} _wrap_Annotation :: T_Annotation -> Inh_Annotation -> Syn_Annotation _wrap_Annotation sem (Inh_Annotation _lhsIcat _lhsIflags _lhsIimCast _lhsItpe) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast _lhsItpe in (Syn_Annotation _lhsOannotatedTree _lhsOoriginalTree)) _sem_Annotation_Annotation :: (Maybe SourcePosition) -> (Maybe T.TypeExtra) -> ([T.TypeError]) -> (Maybe T.TypeExtra) -> ([C.CatalogUpdate]) -> T_Annotation _sem_Annotation_Annotation anSrc_ anType_ anErrs_ anImplicitCast_ anCatUpd_ = (\ _lhsIcat _lhsIflags _lhsIimCast _lhsItpe -> (let _lhsOannotatedTree :: Annotation _lhsOoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag"(line 140, column 7) _lhsOannotatedTree = ({-# LINE 140 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} let t = either (const Nothing) Just _lhsItpe es = either id (const []) _lhsItpe in Annotation anSrc_ t es _lhsIimCast anCatUpd_ {-# LINE 3573 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Annotation anSrc_ anType_ anErrs_ anImplicitCast_ anCatUpd_ {-# LINE 3579 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Annotation anSrc_ anType_ anErrs_ anImplicitCast_ anCatUpd_ {-# LINE 3585 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3591 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AttributeDef ------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AttributeDef originalTree : AttributeDef alternatives: alternative AttributeDef: child ann : Annotation child name : {NameComponent} child typ : TypeName child def : MaybeScalarExpr child cons : RowConstraintList visit 0: local annotatedTree : _ local originalTree : _ -} data AttributeDef = AttributeDef (Annotation) (NameComponent) (TypeName) (MaybeScalarExpr) (RowConstraintList) deriving ( Data,Eq,Show,Typeable) -- cata _sem_AttributeDef :: AttributeDef -> T_AttributeDef _sem_AttributeDef (AttributeDef _ann _name _typ _def _cons) = (_sem_AttributeDef_AttributeDef (_sem_Annotation _ann) _name (_sem_TypeName _typ) (_sem_MaybeScalarExpr _def) (_sem_RowConstraintList _cons)) -- semantic domain type T_AttributeDef = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AttributeDef,AttributeDef) data Inh_AttributeDef = Inh_AttributeDef {_cat_Inh_AttributeDef :: Catalog,_flags_Inh_AttributeDef :: TypeCheckFlags,_imCast_Inh_AttributeDef :: (Maybe TypeExtra)} data Syn_AttributeDef = Syn_AttributeDef {_annotatedTree_Syn_AttributeDef :: AttributeDef,_originalTree_Syn_AttributeDef :: AttributeDef} _wrap_AttributeDef :: T_AttributeDef -> Inh_AttributeDef -> Syn_AttributeDef _wrap_AttributeDef sem (Inh_AttributeDef _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AttributeDef _lhsOannotatedTree _lhsOoriginalTree)) _sem_AttributeDef_AttributeDef :: T_Annotation -> NameComponent -> T_TypeName -> T_MaybeScalarExpr -> T_RowConstraintList -> T_AttributeDef _sem_AttributeDef_AttributeDef ann_ name_ typ_ def_ cons_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _defOdownEnv :: Environment _defOexpectedCast :: Bool _defOexpectedType :: (Maybe TypeExtra) _defOassignmentCastContext :: Bool _lhsOannotatedTree :: AttributeDef _lhsOoriginalTree :: AttributeDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _defOcat :: Catalog _defOflags :: TypeCheckFlags _defOimCast :: (Maybe TypeExtra) _consOcat :: Catalog _consOflags :: TypeCheckFlags _consOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName _defIannotatedTree :: MaybeScalarExpr _defIoriginalTree :: MaybeScalarExpr _defIupType :: (Maybe TypeExtra) _consIannotatedTree :: RowConstraintList _consIoriginalTree :: RowConstraintList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 54, column 33) _annOtpe = ({-# LINE 54 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 3678 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 55, column 33) _defOdownEnv = ({-# LINE 55 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 3684 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 56, column 33) _defOexpectedCast = ({-# LINE 56 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 3690 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 57, column 33) _defOexpectedType = ({-# LINE 57 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 3696 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 807, column 33) _defOassignmentCastContext = ({-# LINE 807 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 3702 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AttributeDef _annIannotatedTree name_ _typIannotatedTree _defIannotatedTree _consIannotatedTree {-# LINE 3708 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AttributeDef _annIoriginalTree name_ _typIoriginalTree _defIoriginalTree _consIoriginalTree {-# LINE 3714 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3720 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3726 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3732 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3738 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3744 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3750 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3756 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3762 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _defOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3768 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _defOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3774 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _defOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3780 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _consOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3786 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _consOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3792 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _consOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3798 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast ( _defIannotatedTree,_defIoriginalTree,_defIupType) = def_ _defOassignmentCastContext _defOcat _defOdownEnv _defOexpectedCast _defOexpectedType _defOflags _defOimCast ( _consIannotatedTree,_consIoriginalTree) = cons_ _consOcat _consOflags _consOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- AttributeDefList -------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : AttributeDefList originalTree : AttributeDefList alternatives: alternative Cons: child hd : AttributeDef child tl : AttributeDefList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type AttributeDefList = [AttributeDef] -- cata _sem_AttributeDefList :: AttributeDefList -> T_AttributeDefList _sem_AttributeDefList list = (Prelude.foldr _sem_AttributeDefList_Cons _sem_AttributeDefList_Nil (Prelude.map _sem_AttributeDef list)) -- semantic domain type T_AttributeDefList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( AttributeDefList,AttributeDefList) data Inh_AttributeDefList = Inh_AttributeDefList {_cat_Inh_AttributeDefList :: Catalog,_flags_Inh_AttributeDefList :: TypeCheckFlags,_imCast_Inh_AttributeDefList :: (Maybe TypeExtra)} data Syn_AttributeDefList = Syn_AttributeDefList {_annotatedTree_Syn_AttributeDefList :: AttributeDefList,_originalTree_Syn_AttributeDefList :: AttributeDefList} _wrap_AttributeDefList :: T_AttributeDefList -> Inh_AttributeDefList -> Syn_AttributeDefList _wrap_AttributeDefList sem (Inh_AttributeDefList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_AttributeDefList _lhsOannotatedTree _lhsOoriginalTree)) _sem_AttributeDefList_Cons :: T_AttributeDef -> T_AttributeDefList -> T_AttributeDefList _sem_AttributeDefList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: AttributeDefList _lhsOoriginalTree :: AttributeDefList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: AttributeDef _hdIoriginalTree :: AttributeDef _tlIannotatedTree :: AttributeDefList _tlIoriginalTree :: AttributeDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 3873 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 3879 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3885 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3891 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3897 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3903 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3909 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 3915 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 3921 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 3927 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_AttributeDefList_Nil :: T_AttributeDefList _sem_AttributeDefList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: AttributeDefList _lhsOoriginalTree :: AttributeDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 3945 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 3951 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 3957 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 3963 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- CaseScalarExprListScalarExprPair ---------------------------- {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags imCast : Maybe TypeExtra thenExpectedType : Maybe TypeExtra whenExpectedType : Maybe TypeExtra synthesized attributes: annotatedTree : CaseScalarExprListScalarExprPair originalTree : CaseScalarExprListScalarExprPair thenType : Maybe TypeExtra upTypes : [Maybe TypeExtra] whenTypes : [Maybe TypeExtra] alternatives: alternative Tuple: child x1 : ScalarExprList child x2 : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ -} type CaseScalarExprListScalarExprPair = ( ScalarExprList,ScalarExpr) -- cata _sem_CaseScalarExprListScalarExprPair :: CaseScalarExprListScalarExprPair -> T_CaseScalarExprListScalarExprPair _sem_CaseScalarExprListScalarExprPair ( x1,x2) = (_sem_CaseScalarExprListScalarExprPair_Tuple (_sem_ScalarExprList x1) (_sem_ScalarExpr x2)) -- semantic domain type T_CaseScalarExprListScalarExprPair = Catalog -> Environment -> TypeCheckFlags -> (Maybe TypeExtra) -> (Maybe TypeExtra) -> (Maybe TypeExtra) -> ( CaseScalarExprListScalarExprPair,CaseScalarExprListScalarExprPair,(Maybe TypeExtra),([Maybe TypeExtra]),([Maybe TypeExtra])) data Inh_CaseScalarExprListScalarExprPair = Inh_CaseScalarExprListScalarExprPair {_cat_Inh_CaseScalarExprListScalarExprPair :: Catalog,_downEnv_Inh_CaseScalarExprListScalarExprPair :: Environment,_flags_Inh_CaseScalarExprListScalarExprPair :: TypeCheckFlags,_imCast_Inh_CaseScalarExprListScalarExprPair :: (Maybe TypeExtra),_thenExpectedType_Inh_CaseScalarExprListScalarExprPair :: (Maybe TypeExtra),_whenExpectedType_Inh_CaseScalarExprListScalarExprPair :: (Maybe TypeExtra)} data Syn_CaseScalarExprListScalarExprPair = Syn_CaseScalarExprListScalarExprPair {_annotatedTree_Syn_CaseScalarExprListScalarExprPair :: CaseScalarExprListScalarExprPair,_originalTree_Syn_CaseScalarExprListScalarExprPair :: CaseScalarExprListScalarExprPair,_thenType_Syn_CaseScalarExprListScalarExprPair :: (Maybe TypeExtra),_upTypes_Syn_CaseScalarExprListScalarExprPair :: ([Maybe TypeExtra]),_whenTypes_Syn_CaseScalarExprListScalarExprPair :: ([Maybe TypeExtra])} _wrap_CaseScalarExprListScalarExprPair :: T_CaseScalarExprListScalarExprPair -> Inh_CaseScalarExprListScalarExprPair -> Syn_CaseScalarExprListScalarExprPair _wrap_CaseScalarExprListScalarExprPair sem (Inh_CaseScalarExprListScalarExprPair _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast _lhsIthenExpectedType _lhsIwhenExpectedType) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOthenType,_lhsOupTypes,_lhsOwhenTypes) = sem _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast _lhsIthenExpectedType _lhsIwhenExpectedType in (Syn_CaseScalarExprListScalarExprPair _lhsOannotatedTree _lhsOoriginalTree _lhsOthenType _lhsOupTypes _lhsOwhenTypes)) _sem_CaseScalarExprListScalarExprPair_Tuple :: T_ScalarExprList -> T_ScalarExpr -> T_CaseScalarExprListScalarExprPair _sem_CaseScalarExprListScalarExprPair_Tuple x1_ x2_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast _lhsIthenExpectedType _lhsIwhenExpectedType -> (let _x2OodbcFunction :: Bool _lhsOwhenTypes :: ([Maybe TypeExtra]) _lhsOthenType :: (Maybe TypeExtra) _x1OexpectedTypes :: ([TypeExtra]) _x1OexpectedCast :: Bool _x2OexpectedType :: (Maybe TypeExtra) _x2OexpectedCast :: Bool _x1OassignmentCastContext :: Bool _x2OassignmentCastContext :: Bool _lhsOannotatedTree :: CaseScalarExprListScalarExprPair _lhsOoriginalTree :: CaseScalarExprListScalarExprPair _lhsOupTypes :: ([Maybe TypeExtra]) _x1Ocat :: Catalog _x1OdownEnv :: Environment _x1Oflags :: TypeCheckFlags _x1OimCast :: (Maybe TypeExtra) _x2Ocat :: Catalog _x2OdownEnv :: Environment _x2Oflags :: TypeCheckFlags _x2OimCast :: (Maybe TypeExtra) _x1IannotatedTree :: ScalarExprList _x1IoriginalTree :: ScalarExprList _x1IupTypes :: ([Maybe TypeExtra]) _x2IannotatedTree :: ScalarExpr _x2IcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _x2IoriginalTree :: ScalarExpr _x2IupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 134, column 13) _x2OodbcFunction = ({-# LINE 134 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 4053 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 549, column 13) _lhsOwhenTypes = ({-# LINE 549 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _x1IupTypes {-# LINE 4059 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 550, column 13) _lhsOthenType = ({-# LINE 550 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _x2IupType {-# LINE 4065 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 605, column 11) _x1OexpectedTypes = ({-# LINE 605 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe [] repeat _lhsIwhenExpectedType {-# LINE 4071 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 606, column 11) _x1OexpectedCast = ({-# LINE 606 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 4077 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 607, column 11) _x2OexpectedType = ({-# LINE 607 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIthenExpectedType {-# LINE 4083 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 608, column 11) _x2OexpectedCast = ({-# LINE 608 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} True {-# LINE 4089 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 808, column 46) _x1OassignmentCastContext = ({-# LINE 808 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 4095 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 809, column 46) _x2OassignmentCastContext = ({-# LINE 809 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 4101 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IannotatedTree,_x2IannotatedTree) {-# LINE 4107 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IoriginalTree,_x2IoriginalTree) {-# LINE 4113 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4119 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4125 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOupTypes = ({-# LINE 554 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _x1IupTypes {-# LINE 4131 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4137 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1OdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 4143 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4149 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4155 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4161 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2OdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 4167 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4173 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4179 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _x1IannotatedTree,_x1IoriginalTree,_x1IupTypes) = x1_ _x1OassignmentCastContext _x1Ocat _x1OdownEnv _x1OexpectedCast _x1OexpectedTypes _x1Oflags _x1OimCast ( _x2IannotatedTree,_x2IcolExprs,_x2IoriginalTree,_x2IupType) = x2_ _x2OassignmentCastContext _x2Ocat _x2OdownEnv _x2OexpectedCast _x2OexpectedType _x2Oflags _x2OimCast _x2OodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOthenType,_lhsOupTypes,_lhsOwhenTypes))) -- CaseScalarExprListScalarExprPairList ------------------------ {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags imCast : Maybe TypeExtra thenExpectedType : Maybe TypeExtra whenExpectedType : Maybe TypeExtra synthesized attributes: annotatedTree : CaseScalarExprListScalarExprPairList originalTree : CaseScalarExprListScalarExprPairList thenTypes : [Maybe TypeExtra] upTypes : [Maybe TypeExtra] whenTypes : [[Maybe TypeExtra]] alternatives: alternative Cons: child hd : CaseScalarExprListScalarExprPair child tl : CaseScalarExprListScalarExprPairList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type CaseScalarExprListScalarExprPairList = [CaseScalarExprListScalarExprPair] -- cata _sem_CaseScalarExprListScalarExprPairList :: CaseScalarExprListScalarExprPairList -> T_CaseScalarExprListScalarExprPairList _sem_CaseScalarExprListScalarExprPairList list = (Prelude.foldr _sem_CaseScalarExprListScalarExprPairList_Cons _sem_CaseScalarExprListScalarExprPairList_Nil (Prelude.map _sem_CaseScalarExprListScalarExprPair list)) -- semantic domain type T_CaseScalarExprListScalarExprPairList = Catalog -> Environment -> TypeCheckFlags -> (Maybe TypeExtra) -> (Maybe TypeExtra) -> (Maybe TypeExtra) -> ( CaseScalarExprListScalarExprPairList,CaseScalarExprListScalarExprPairList,([Maybe TypeExtra]),([Maybe TypeExtra]),([[Maybe TypeExtra]])) data Inh_CaseScalarExprListScalarExprPairList = Inh_CaseScalarExprListScalarExprPairList {_cat_Inh_CaseScalarExprListScalarExprPairList :: Catalog,_downEnv_Inh_CaseScalarExprListScalarExprPairList :: Environment,_flags_Inh_CaseScalarExprListScalarExprPairList :: TypeCheckFlags,_imCast_Inh_CaseScalarExprListScalarExprPairList :: (Maybe TypeExtra),_thenExpectedType_Inh_CaseScalarExprListScalarExprPairList :: (Maybe TypeExtra),_whenExpectedType_Inh_CaseScalarExprListScalarExprPairList :: (Maybe TypeExtra)} data Syn_CaseScalarExprListScalarExprPairList = Syn_CaseScalarExprListScalarExprPairList {_annotatedTree_Syn_CaseScalarExprListScalarExprPairList :: CaseScalarExprListScalarExprPairList,_originalTree_Syn_CaseScalarExprListScalarExprPairList :: CaseScalarExprListScalarExprPairList,_thenTypes_Syn_CaseScalarExprListScalarExprPairList :: ([Maybe TypeExtra]),_upTypes_Syn_CaseScalarExprListScalarExprPairList :: ([Maybe TypeExtra]),_whenTypes_Syn_CaseScalarExprListScalarExprPairList :: ([[Maybe TypeExtra]])} _wrap_CaseScalarExprListScalarExprPairList :: T_CaseScalarExprListScalarExprPairList -> Inh_CaseScalarExprListScalarExprPairList -> Syn_CaseScalarExprListScalarExprPairList _wrap_CaseScalarExprListScalarExprPairList sem (Inh_CaseScalarExprListScalarExprPairList _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast _lhsIthenExpectedType _lhsIwhenExpectedType) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOthenTypes,_lhsOupTypes,_lhsOwhenTypes) = sem _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast _lhsIthenExpectedType _lhsIwhenExpectedType in (Syn_CaseScalarExprListScalarExprPairList _lhsOannotatedTree _lhsOoriginalTree _lhsOthenTypes _lhsOupTypes _lhsOwhenTypes)) _sem_CaseScalarExprListScalarExprPairList_Cons :: T_CaseScalarExprListScalarExprPair -> T_CaseScalarExprListScalarExprPairList -> T_CaseScalarExprListScalarExprPairList _sem_CaseScalarExprListScalarExprPairList_Cons hd_ tl_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast _lhsIthenExpectedType _lhsIwhenExpectedType -> (let _lhsOwhenTypes :: ([[Maybe TypeExtra]]) _lhsOthenTypes :: ([Maybe TypeExtra]) _lhsOannotatedTree :: CaseScalarExprListScalarExprPairList _lhsOoriginalTree :: CaseScalarExprListScalarExprPairList _lhsOupTypes :: ([Maybe TypeExtra]) _hdOcat :: Catalog _hdOdownEnv :: Environment _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _hdOthenExpectedType :: (Maybe TypeExtra) _hdOwhenExpectedType :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOdownEnv :: Environment _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _tlOthenExpectedType :: (Maybe TypeExtra) _tlOwhenExpectedType :: (Maybe TypeExtra) _hdIannotatedTree :: CaseScalarExprListScalarExprPair _hdIoriginalTree :: CaseScalarExprListScalarExprPair _hdIthenType :: (Maybe TypeExtra) _hdIupTypes :: ([Maybe TypeExtra]) _hdIwhenTypes :: ([Maybe TypeExtra]) _tlIannotatedTree :: CaseScalarExprListScalarExprPairList _tlIoriginalTree :: CaseScalarExprListScalarExprPairList _tlIthenTypes :: ([Maybe TypeExtra]) _tlIupTypes :: ([Maybe TypeExtra]) _tlIwhenTypes :: ([[Maybe TypeExtra]]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 538, column 10) _lhsOwhenTypes = ({-# LINE 538 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _hdIwhenTypes : _tlIwhenTypes {-# LINE 4277 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 539, column 10) _lhsOthenTypes = ({-# LINE 539 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _hdIthenType : _tlIthenTypes {-# LINE 4283 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 4289 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 4295 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4301 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4307 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOupTypes = ({-# LINE 554 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tlIupTypes {-# LINE 4313 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4319 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOdownEnv = ({-# LINE 553 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 4325 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4331 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4337 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOthenExpectedType = ({-# LINE 601 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIthenExpectedType {-# LINE 4343 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOwhenExpectedType = ({-# LINE 602 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIwhenExpectedType {-# LINE 4349 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4355 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOdownEnv = ({-# LINE 553 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 4361 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4367 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4373 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOthenExpectedType = ({-# LINE 601 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIthenExpectedType {-# LINE 4379 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOwhenExpectedType = ({-# LINE 602 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIwhenExpectedType {-# LINE 4385 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree,_hdIthenType,_hdIupTypes,_hdIwhenTypes) = hd_ _hdOcat _hdOdownEnv _hdOflags _hdOimCast _hdOthenExpectedType _hdOwhenExpectedType ( _tlIannotatedTree,_tlIoriginalTree,_tlIthenTypes,_tlIupTypes,_tlIwhenTypes) = tl_ _tlOcat _tlOdownEnv _tlOflags _tlOimCast _tlOthenExpectedType _tlOwhenExpectedType in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOthenTypes,_lhsOupTypes,_lhsOwhenTypes))) _sem_CaseScalarExprListScalarExprPairList_Nil :: T_CaseScalarExprListScalarExprPairList _sem_CaseScalarExprListScalarExprPairList_Nil = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast _lhsIthenExpectedType _lhsIwhenExpectedType -> (let _lhsOwhenTypes :: ([[Maybe TypeExtra]]) _lhsOthenTypes :: ([Maybe TypeExtra]) _lhsOupTypes :: ([Maybe TypeExtra]) _lhsOannotatedTree :: CaseScalarExprListScalarExprPairList _lhsOoriginalTree :: CaseScalarExprListScalarExprPairList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 540, column 9) _lhsOwhenTypes = ({-# LINE 540 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} [] {-# LINE 4409 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 541, column 9) _lhsOthenTypes = ({-# LINE 541 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} [] {-# LINE 4415 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 542, column 9) _lhsOupTypes = ({-# LINE 542 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} [] {-# LINE 4421 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 4427 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 4433 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4439 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4445 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOthenTypes,_lhsOupTypes,_lhsOwhenTypes))) -- Constraint -------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : Constraint originalTree : Constraint alternatives: alternative UniqueConstraint: child ann : Annotation child name : {String} child x : {[NameComponent]} visit 0: local annotatedTree : _ local originalTree : _ alternative PrimaryKeyConstraint: child ann : Annotation child name : {String} child x : {[NameComponent]} visit 0: local annotatedTree : _ local originalTree : _ alternative CheckConstraint: child ann : Annotation child name : {String} child expr : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative ReferenceConstraint: child ann : Annotation child name : {String} child atts : {[NameComponent]} child table : Name child tableAtts : {[NameComponent]} child onUpdate : {Cascade} child onDelete : {Cascade} visit 0: local annotatedTree : _ local originalTree : _ -} data Constraint = UniqueConstraint (Annotation) (String) (([NameComponent])) | PrimaryKeyConstraint (Annotation) (String) (([NameComponent])) | CheckConstraint (Annotation) (String) (ScalarExpr) | ReferenceConstraint (Annotation) (String) (([NameComponent])) (Name) (([NameComponent])) (Cascade) (Cascade) deriving ( Data,Eq,Show,Typeable) -- cata _sem_Constraint :: Constraint -> T_Constraint _sem_Constraint (UniqueConstraint _ann _name _x) = (_sem_Constraint_UniqueConstraint (_sem_Annotation _ann) _name _x) _sem_Constraint (PrimaryKeyConstraint _ann _name _x) = (_sem_Constraint_PrimaryKeyConstraint (_sem_Annotation _ann) _name _x) _sem_Constraint (CheckConstraint _ann _name _expr) = (_sem_Constraint_CheckConstraint (_sem_Annotation _ann) _name (_sem_ScalarExpr _expr)) _sem_Constraint (ReferenceConstraint _ann _name _atts _table _tableAtts _onUpdate _onDelete) = (_sem_Constraint_ReferenceConstraint (_sem_Annotation _ann) _name _atts (_sem_Name _table) _tableAtts _onUpdate _onDelete) -- semantic domain type T_Constraint = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( Constraint,Constraint) data Inh_Constraint = Inh_Constraint {_cat_Inh_Constraint :: Catalog,_flags_Inh_Constraint :: TypeCheckFlags,_imCast_Inh_Constraint :: (Maybe TypeExtra)} data Syn_Constraint = Syn_Constraint {_annotatedTree_Syn_Constraint :: Constraint,_originalTree_Syn_Constraint :: Constraint} _wrap_Constraint :: T_Constraint -> Inh_Constraint -> Syn_Constraint _wrap_Constraint sem (Inh_Constraint _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_Constraint _lhsOannotatedTree _lhsOoriginalTree)) _sem_Constraint_UniqueConstraint :: T_Annotation -> String -> ([NameComponent]) -> T_Constraint _sem_Constraint_UniqueConstraint ann_ name_ x_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Constraint _lhsOoriginalTree :: Constraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 65, column 35) _annOtpe = ({-# LINE 65 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 4541 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} UniqueConstraint _annIannotatedTree name_ x_ {-# LINE 4547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} UniqueConstraint _annIoriginalTree name_ x_ {-# LINE 4553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4559 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4571 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4577 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4583 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Constraint_PrimaryKeyConstraint :: T_Annotation -> String -> ([NameComponent]) -> T_Constraint _sem_Constraint_PrimaryKeyConstraint ann_ name_ x_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Constraint _lhsOoriginalTree :: Constraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 62, column 39) _annOtpe = ({-# LINE 62 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 4608 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PrimaryKeyConstraint _annIannotatedTree name_ x_ {-# LINE 4614 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PrimaryKeyConstraint _annIoriginalTree name_ x_ {-# LINE 4620 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4626 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4632 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4638 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4644 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4650 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Constraint_CheckConstraint :: T_Annotation -> String -> T_ScalarExpr -> T_Constraint _sem_Constraint_CheckConstraint ann_ name_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOodbcFunction :: Bool _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Constraint _lhsOoriginalTree :: Constraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 58, column 34) _annOtpe = ({-# LINE 58 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 4687 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 59, column 34) _exprOdownEnv = ({-# LINE 59 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 4693 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 60, column 34) _exprOexpectedCast = ({-# LINE 60 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 4699 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 61, column 34) _exprOexpectedType = ({-# LINE 61 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 4705 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 137, column 23) _exprOodbcFunction = ({-# LINE 137 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 4711 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 810, column 34) _exprOassignmentCastContext = ({-# LINE 810 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 4717 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CheckConstraint _annIannotatedTree name_ _exprIannotatedTree {-# LINE 4723 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CheckConstraint _annIoriginalTree name_ _exprIoriginalTree {-# LINE 4729 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4735 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4741 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4747 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4753 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4759 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4765 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4771 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4777 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Constraint_ReferenceConstraint :: T_Annotation -> String -> ([NameComponent]) -> T_Name -> ([NameComponent]) -> Cascade -> Cascade -> T_Constraint _sem_Constraint_ReferenceConstraint ann_ name_ atts_ table_ tableAtts_ onUpdate_ onDelete_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _tableOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Constraint _lhsOoriginalTree :: Constraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tableOcat :: Catalog _tableOflags :: TypeCheckFlags _tableOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tableIannotatedTree :: Name _tableIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 63, column 38) _annOtpe = ({-# LINE 63 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 4814 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 64, column 38) _tableOtpe = ({-# LINE 64 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 4820 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ReferenceConstraint _annIannotatedTree name_ atts_ _tableIannotatedTree tableAtts_ onUpdate_ onDelete_ {-# LINE 4826 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ReferenceConstraint _annIoriginalTree name_ atts_ _tableIoriginalTree tableAtts_ onUpdate_ onDelete_ {-# LINE 4832 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4838 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4844 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4850 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4856 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4862 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4868 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4874 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4880 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tableIannotatedTree,_tableIoriginalTree) = table_ _tableOcat _tableOflags _tableOimCast _tableOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ConstraintList ---------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ConstraintList originalTree : ConstraintList alternatives: alternative Cons: child hd : Constraint child tl : ConstraintList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ConstraintList = [Constraint] -- cata _sem_ConstraintList :: ConstraintList -> T_ConstraintList _sem_ConstraintList list = (Prelude.foldr _sem_ConstraintList_Cons _sem_ConstraintList_Nil (Prelude.map _sem_Constraint list)) -- semantic domain type T_ConstraintList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ConstraintList,ConstraintList) data Inh_ConstraintList = Inh_ConstraintList {_cat_Inh_ConstraintList :: Catalog,_flags_Inh_ConstraintList :: TypeCheckFlags,_imCast_Inh_ConstraintList :: (Maybe TypeExtra)} data Syn_ConstraintList = Syn_ConstraintList {_annotatedTree_Syn_ConstraintList :: ConstraintList,_originalTree_Syn_ConstraintList :: ConstraintList} _wrap_ConstraintList :: T_ConstraintList -> Inh_ConstraintList -> Syn_ConstraintList _wrap_ConstraintList sem (Inh_ConstraintList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_ConstraintList _lhsOannotatedTree _lhsOoriginalTree)) _sem_ConstraintList_Cons :: T_Constraint -> T_ConstraintList -> T_ConstraintList _sem_ConstraintList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ConstraintList _lhsOoriginalTree :: ConstraintList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: Constraint _hdIoriginalTree :: Constraint _tlIannotatedTree :: ConstraintList _tlIoriginalTree :: ConstraintList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 4951 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 4957 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 4963 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 4969 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4975 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4981 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 4987 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 4993 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 4999 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5005 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_ConstraintList_Nil :: T_ConstraintList _sem_ConstraintList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ConstraintList _lhsOoriginalTree :: ConstraintList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 5023 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 5029 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5035 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5041 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- FnBody ------------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : FnBody originalTree : FnBody alternatives: alternative SqlFnBody: child ann : Annotation child sts : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative PlpgsqlFnBody: child ann : Annotation child blk : Statement visit 0: local annotatedTree : _ local originalTree : _ -} data FnBody = SqlFnBody (Annotation) (StatementList) | PlpgsqlFnBody (Annotation) (Statement) deriving ( Data,Eq,Show,Typeable) -- cata _sem_FnBody :: FnBody -> T_FnBody _sem_FnBody (SqlFnBody _ann _sts) = (_sem_FnBody_SqlFnBody (_sem_Annotation _ann) (_sem_StatementList _sts)) _sem_FnBody (PlpgsqlFnBody _ann _blk) = (_sem_FnBody_PlpgsqlFnBody (_sem_Annotation _ann) (_sem_Statement _blk)) -- semantic domain type T_FnBody = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( FnBody,FnBody) data Inh_FnBody = Inh_FnBody {_cat_Inh_FnBody :: Catalog,_flags_Inh_FnBody :: TypeCheckFlags,_imCast_Inh_FnBody :: (Maybe TypeExtra)} data Syn_FnBody = Syn_FnBody {_annotatedTree_Syn_FnBody :: FnBody,_originalTree_Syn_FnBody :: FnBody} _wrap_FnBody :: T_FnBody -> Inh_FnBody -> Syn_FnBody _wrap_FnBody sem (Inh_FnBody _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_FnBody _lhsOannotatedTree _lhsOoriginalTree)) _sem_FnBody_SqlFnBody :: T_Annotation -> T_StatementList -> T_FnBody _sem_FnBody_SqlFnBody ann_ sts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: FnBody _lhsOoriginalTree :: FnBody _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _stsOcat :: Catalog _stsOflags :: TypeCheckFlags _stsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _stsIannotatedTree :: StatementList _stsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 67, column 24) _annOtpe = ({-# LINE 67 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 5115 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SqlFnBody _annIannotatedTree _stsIannotatedTree {-# LINE 5121 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SqlFnBody _annIoriginalTree _stsIoriginalTree {-# LINE 5127 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5133 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5139 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5145 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5151 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5157 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5163 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5169 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5175 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _stsIannotatedTree,_stsIoriginalTree) = sts_ _stsOcat _stsOflags _stsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_FnBody_PlpgsqlFnBody :: T_Annotation -> T_Statement -> T_FnBody _sem_FnBody_PlpgsqlFnBody ann_ blk_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: FnBody _lhsOoriginalTree :: FnBody _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _blkOcat :: Catalog _blkOflags :: TypeCheckFlags _blkOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _blkIannotatedTree :: Statement _blkIoriginalTree :: Statement -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 66, column 28) _annOtpe = ({-# LINE 66 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 5206 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PlpgsqlFnBody _annIannotatedTree _blkIannotatedTree {-# LINE 5212 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PlpgsqlFnBody _annIoriginalTree _blkIoriginalTree {-# LINE 5218 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5224 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5230 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5236 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5242 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5248 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _blkOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5254 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _blkOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5260 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _blkOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5266 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _blkIannotatedTree,_blkIoriginalTree) = blk_ _blkOcat _blkOflags _blkOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- InList ------------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog downEnv : Environment expectedCast : Bool expectedType : Maybe TypeExtra flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : InList listType : Either [TypeError] TypeExtra originalTree : InList alternatives: alternative InList: child ann : Annotation child exprs : ScalarExprList visit 0: local tpe : _ local annotatedTree : _ local originalTree : _ alternative InQueryExpr: child ann : Annotation child sel : QueryExpr visit 0: local tpe : _ local annotatedTree : _ local originalTree : _ -} data InList = InList (Annotation) (ScalarExprList) | InQueryExpr (Annotation) (QueryExpr) deriving ( Data,Eq,Show,Typeable) -- cata _sem_InList :: InList -> T_InList _sem_InList (InList _ann _exprs) = (_sem_InList_InList (_sem_Annotation _ann) (_sem_ScalarExprList _exprs)) _sem_InList (InQueryExpr _ann _sel) = (_sem_InList_InQueryExpr (_sem_Annotation _ann) (_sem_QueryExpr _sel)) -- semantic domain type T_InList = Catalog -> Environment -> Bool -> (Maybe TypeExtra) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( InList,(Either [TypeError] TypeExtra),InList) data Inh_InList = Inh_InList {_cat_Inh_InList :: Catalog,_downEnv_Inh_InList :: Environment,_expectedCast_Inh_InList :: Bool,_expectedType_Inh_InList :: (Maybe TypeExtra),_flags_Inh_InList :: TypeCheckFlags,_imCast_Inh_InList :: (Maybe TypeExtra)} data Syn_InList = Syn_InList {_annotatedTree_Syn_InList :: InList,_listType_Syn_InList :: (Either [TypeError] TypeExtra),_originalTree_Syn_InList :: InList} _wrap_InList :: T_InList -> Inh_InList -> Syn_InList _wrap_InList sem (Inh_InList _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOlistType,_lhsOoriginalTree) = sem _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast in (Syn_InList _lhsOannotatedTree _lhsOlistType _lhsOoriginalTree)) _sem_InList_InList :: T_Annotation -> T_ScalarExprList -> T_InList _sem_InList_InList ann_ exprs_ = (\ _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOlistType :: (Either [TypeError] TypeExtra) _exprsOexpectedTypes :: ([TypeExtra]) _exprsOexpectedCast :: Bool _annOimCast :: (Maybe TypeExtra) _exprsOassignmentCastContext :: Bool _lhsOannotatedTree :: InList _lhsOoriginalTree :: InList _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOtpe :: (Either [TypeError] TypeExtra) _exprsOcat :: Catalog _exprsOdownEnv :: Environment _exprsOflags :: TypeCheckFlags _exprsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprsIannotatedTree :: ScalarExprList _exprsIoriginalTree :: ScalarExprList _exprsIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 219, column 9) _tpe = ({-# LINE 219 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Left [] {-# LINE 5362 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 681, column 9) _lhsOlistType = ({-# LINE 681 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} mapM (maybe (Left []) Right) _exprsIupTypes >>= resolveResultSetTypeExtra _lhsIcat {-# LINE 5369 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 683, column 9) _exprsOexpectedTypes = ({-# LINE 683 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe [] repeat _lhsIexpectedType {-# LINE 5375 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 685, column 9) _exprsOexpectedCast = ({-# LINE 685 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5381 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 781, column 12) _annOimCast = ({-# LINE 781 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 5387 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 811, column 21) _exprsOassignmentCastContext = ({-# LINE 811 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5393 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} InList _annIannotatedTree _exprsIannotatedTree {-# LINE 5399 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} InList _annIoriginalTree _exprsIoriginalTree {-# LINE 5405 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5411 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5417 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5423 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5429 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 5435 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5441 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprsOdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 5447 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5453 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5459 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprsIannotatedTree,_exprsIoriginalTree,_exprsIupTypes) = exprs_ _exprsOassignmentCastContext _exprsOcat _exprsOdownEnv _exprsOexpectedCast _exprsOexpectedTypes _exprsOflags _exprsOimCast in ( _lhsOannotatedTree,_lhsOlistType,_lhsOoriginalTree))) _sem_InList_InQueryExpr :: T_Annotation -> T_QueryExpr -> T_InList _sem_InList_InQueryExpr ann_ sel_ = (\ _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _selOouterDownEnv :: (Maybe Environment) _lhsOlistType :: (Either [TypeError] TypeExtra) _selOexpectedType :: (Maybe [TypeExtra]) _annOimCast :: (Maybe TypeExtra) _selOassignmentCastContext :: Bool _lhsOannotatedTree :: InList _lhsOoriginalTree :: InList _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOtpe :: (Either [TypeError] TypeExtra) _selOcat :: Catalog _selOflags :: TypeCheckFlags _selOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _selIannotatedTree :: QueryExpr _selIoriginalTree :: QueryExpr _selIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 97, column 17) _selOouterDownEnv = ({-# LINE 97 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Nothing {-# LINE 5498 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 219, column 9) _tpe = ({-# LINE 219 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Left [] {-# LINE 5504 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 688, column 9) _lhsOlistType = ({-# LINE 688 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do st <- maybe (Left []) Right (map snd <$> _selIupType) case length st of 0 -> Left [InternalError "got subquery with no columns? in inselect"] 1 -> Right $ head st _ -> Right $ mkTypeExtra $ AnonymousCompositeType $ map teType st {-# LINE 5517 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 698, column 9) _selOexpectedType = ({-# LINE 698 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} liftM (map snd) _selIupType {-# LINE 5523 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 782, column 17) _annOimCast = ({-# LINE 782 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 5529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 812, column 26) _selOassignmentCastContext = ({-# LINE 812 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} InQueryExpr _annIannotatedTree _selIannotatedTree {-# LINE 5541 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} InQueryExpr _annIoriginalTree _selIoriginalTree {-# LINE 5547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5559 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5571 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 5577 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5583 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5589 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5595 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _selIannotatedTree,_selIoriginalTree,_selIupType) = sel_ _selOassignmentCastContext _selOcat _selOexpectedType _selOflags _selOimCast _selOouterDownEnv in ( _lhsOannotatedTree,_lhsOlistType,_lhsOoriginalTree))) -- JoinExpr ---------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : JoinExpr originalTree : JoinExpr alternatives: alternative JoinOn: child ann : Annotation child expr : ScalarExpr visit 0: local tpe : _ local annotatedTree : _ local originalTree : _ alternative JoinUsing: child ann : Annotation child x : {[NameComponent]} visit 0: local tpe : _ local annotatedTree : _ local originalTree : _ -} data JoinExpr = JoinOn (Annotation) (ScalarExpr) | JoinUsing (Annotation) (([NameComponent])) deriving ( Data,Eq,Show,Typeable) -- cata _sem_JoinExpr :: JoinExpr -> T_JoinExpr _sem_JoinExpr (JoinOn _ann _expr) = (_sem_JoinExpr_JoinOn (_sem_Annotation _ann) (_sem_ScalarExpr _expr)) _sem_JoinExpr (JoinUsing _ann _x) = (_sem_JoinExpr_JoinUsing (_sem_Annotation _ann) _x) -- semantic domain type T_JoinExpr = Catalog -> Environment -> TypeCheckFlags -> (Maybe TypeExtra) -> ( JoinExpr,JoinExpr) data Inh_JoinExpr = Inh_JoinExpr {_cat_Inh_JoinExpr :: Catalog,_downEnv_Inh_JoinExpr :: Environment,_flags_Inh_JoinExpr :: TypeCheckFlags,_imCast_Inh_JoinExpr :: (Maybe TypeExtra)} data Syn_JoinExpr = Syn_JoinExpr {_annotatedTree_Syn_JoinExpr :: JoinExpr,_originalTree_Syn_JoinExpr :: JoinExpr} _wrap_JoinExpr :: T_JoinExpr -> Inh_JoinExpr -> Syn_JoinExpr _wrap_JoinExpr sem (Inh_JoinExpr _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast in (Syn_JoinExpr _lhsOannotatedTree _lhsOoriginalTree)) _sem_JoinExpr_JoinOn :: T_Annotation -> T_ScalarExpr -> T_JoinExpr _sem_JoinExpr_JoinOn ann_ expr_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _exprOodbcFunction :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOexpectedCast :: Bool _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: JoinExpr _lhsOoriginalTree :: JoinExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _exprOcat :: Catalog _exprOdownEnv :: Environment _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 223, column 9) _tpe = ({-# LINE 223 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Left [] {-# LINE 5685 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 140, column 14) _exprOodbcFunction = ({-# LINE 140 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5691 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 745, column 7) _exprOexpectedType = ({-# LINE 745 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do bt <- ansiTypeNameToDialect (tcfDialect _lhsIflags) "boolean" Just $ TypeExtra (ScalarType bt) Nothing Nothing $ maybe False teNullable _exprIupType {-# LINE 5700 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 749, column 7) _exprOexpectedCast = ({-# LINE 749 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5706 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 813, column 23) _exprOassignmentCastContext = ({-# LINE 813 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5712 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} JoinOn _annIannotatedTree _exprIannotatedTree {-# LINE 5718 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} JoinOn _annIoriginalTree _exprIoriginalTree {-# LINE 5724 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5730 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5736 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5742 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5748 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5754 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 5760 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5766 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 5772 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5778 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5784 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_JoinExpr_JoinUsing :: T_Annotation -> ([NameComponent]) -> T_JoinExpr _sem_JoinExpr_JoinUsing ann_ x_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: JoinExpr _lhsOoriginalTree :: JoinExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 223, column 9) _tpe = ({-# LINE 223 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Left [] {-# LINE 5811 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} JoinUsing _annIannotatedTree x_ {-# LINE 5817 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} JoinUsing _annIoriginalTree x_ {-# LINE 5823 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5829 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5835 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5841 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5847 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5853 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 5859 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- MaybeBoolExpr ----------------------------------------------- {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : MaybeBoolExpr originalTree : MaybeBoolExpr alternatives: alternative Just: child just : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative Nothing: visit 0: local annotatedTree : _ local originalTree : _ -} type MaybeBoolExpr = Maybe (ScalarExpr) -- cata _sem_MaybeBoolExpr :: MaybeBoolExpr -> T_MaybeBoolExpr _sem_MaybeBoolExpr (Prelude.Just x) = (_sem_MaybeBoolExpr_Just (_sem_ScalarExpr x)) _sem_MaybeBoolExpr Prelude.Nothing = _sem_MaybeBoolExpr_Nothing -- semantic domain type T_MaybeBoolExpr = Catalog -> Environment -> TypeCheckFlags -> (Maybe TypeExtra) -> ( MaybeBoolExpr,MaybeBoolExpr) data Inh_MaybeBoolExpr = Inh_MaybeBoolExpr {_cat_Inh_MaybeBoolExpr :: Catalog,_downEnv_Inh_MaybeBoolExpr :: Environment,_flags_Inh_MaybeBoolExpr :: TypeCheckFlags,_imCast_Inh_MaybeBoolExpr :: (Maybe TypeExtra)} data Syn_MaybeBoolExpr = Syn_MaybeBoolExpr {_annotatedTree_Syn_MaybeBoolExpr :: MaybeBoolExpr,_originalTree_Syn_MaybeBoolExpr :: MaybeBoolExpr} _wrap_MaybeBoolExpr :: T_MaybeBoolExpr -> Inh_MaybeBoolExpr -> Syn_MaybeBoolExpr _wrap_MaybeBoolExpr sem (Inh_MaybeBoolExpr _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast in (Syn_MaybeBoolExpr _lhsOannotatedTree _lhsOoriginalTree)) _sem_MaybeBoolExpr_Just :: T_ScalarExpr -> T_MaybeBoolExpr _sem_MaybeBoolExpr_Just just_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _justOodbcFunction :: Bool _justOexpectedType :: (Maybe TypeExtra) _justOexpectedCast :: Bool _justOassignmentCastContext :: Bool _lhsOannotatedTree :: MaybeBoolExpr _lhsOoriginalTree :: MaybeBoolExpr _justOcat :: Catalog _justOdownEnv :: Environment _justOflags :: TypeCheckFlags _justOimCast :: (Maybe TypeExtra) _justIannotatedTree :: ScalarExpr _justIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _justIoriginalTree :: ScalarExpr _justIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 143, column 12) _justOodbcFunction = ({-# LINE 143 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5933 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 761, column 7) _justOexpectedType = ({-# LINE 761 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 5939 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 762, column 7) _justOexpectedCast = ({-# LINE 762 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5945 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 814, column 26) _justOassignmentCastContext = ({-# LINE 814 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 5951 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIannotatedTree {-# LINE 5957 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIoriginalTree {-# LINE 5963 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 5969 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 5975 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 5981 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 5987 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 5993 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 5999 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _justIannotatedTree,_justIcolExprs,_justIoriginalTree,_justIupType) = just_ _justOassignmentCastContext _justOcat _justOdownEnv _justOexpectedCast _justOexpectedType _justOflags _justOimCast _justOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_MaybeBoolExpr_Nothing :: T_MaybeBoolExpr _sem_MaybeBoolExpr_Nothing = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: MaybeBoolExpr _lhsOoriginalTree :: MaybeBoolExpr -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6016 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6022 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6028 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6034 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- MaybeNameComponentList -------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : MaybeNameComponentList originalTree : MaybeNameComponentList alternatives: alternative Just: child just : NameComponentList visit 0: local annotatedTree : _ local originalTree : _ alternative Nothing: visit 0: local annotatedTree : _ local originalTree : _ -} type MaybeNameComponentList = Maybe (NameComponentList) -- cata _sem_MaybeNameComponentList :: MaybeNameComponentList -> T_MaybeNameComponentList _sem_MaybeNameComponentList (Prelude.Just x) = (_sem_MaybeNameComponentList_Just (_sem_NameComponentList x)) _sem_MaybeNameComponentList Prelude.Nothing = _sem_MaybeNameComponentList_Nothing -- semantic domain type T_MaybeNameComponentList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( MaybeNameComponentList,MaybeNameComponentList) data Inh_MaybeNameComponentList = Inh_MaybeNameComponentList {_cat_Inh_MaybeNameComponentList :: Catalog,_flags_Inh_MaybeNameComponentList :: TypeCheckFlags,_imCast_Inh_MaybeNameComponentList :: (Maybe TypeExtra)} data Syn_MaybeNameComponentList = Syn_MaybeNameComponentList {_annotatedTree_Syn_MaybeNameComponentList :: MaybeNameComponentList,_originalTree_Syn_MaybeNameComponentList :: MaybeNameComponentList} _wrap_MaybeNameComponentList :: T_MaybeNameComponentList -> Inh_MaybeNameComponentList -> Syn_MaybeNameComponentList _wrap_MaybeNameComponentList sem (Inh_MaybeNameComponentList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_MaybeNameComponentList _lhsOannotatedTree _lhsOoriginalTree)) _sem_MaybeNameComponentList_Just :: T_NameComponentList -> T_MaybeNameComponentList _sem_MaybeNameComponentList_Just just_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: MaybeNameComponentList _lhsOoriginalTree :: MaybeNameComponentList _justOcat :: Catalog _justOflags :: TypeCheckFlags _justOimCast :: (Maybe TypeExtra) _justIannotatedTree :: NameComponentList _justIoriginalTree :: NameComponentList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIannotatedTree {-# LINE 6096 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIoriginalTree {-# LINE 6102 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6108 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6114 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 6120 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 6126 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 6132 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _justIannotatedTree,_justIoriginalTree) = just_ _justOcat _justOflags _justOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_MaybeNameComponentList_Nothing :: T_MaybeNameComponentList _sem_MaybeNameComponentList_Nothing = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: MaybeNameComponentList _lhsOoriginalTree :: MaybeNameComponentList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6148 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6154 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6160 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6166 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- MaybeScalarExpr --------------------------------------------- {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog downEnv : Environment expectedCast : Bool expectedType : Maybe TypeExtra flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : MaybeScalarExpr originalTree : MaybeScalarExpr upType : Maybe TypeExtra alternatives: alternative Just: child just : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative Nothing: visit 0: local annotatedTree : _ local originalTree : _ -} type MaybeScalarExpr = Maybe (ScalarExpr) -- cata _sem_MaybeScalarExpr :: MaybeScalarExpr -> T_MaybeScalarExpr _sem_MaybeScalarExpr (Prelude.Just x) = (_sem_MaybeScalarExpr_Just (_sem_ScalarExpr x)) _sem_MaybeScalarExpr Prelude.Nothing = _sem_MaybeScalarExpr_Nothing -- semantic domain type T_MaybeScalarExpr = Bool -> Catalog -> Environment -> Bool -> (Maybe TypeExtra) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( MaybeScalarExpr,MaybeScalarExpr,(Maybe TypeExtra)) data Inh_MaybeScalarExpr = Inh_MaybeScalarExpr {_assignmentCastContext_Inh_MaybeScalarExpr :: Bool,_cat_Inh_MaybeScalarExpr :: Catalog,_downEnv_Inh_MaybeScalarExpr :: Environment,_expectedCast_Inh_MaybeScalarExpr :: Bool,_expectedType_Inh_MaybeScalarExpr :: (Maybe TypeExtra),_flags_Inh_MaybeScalarExpr :: TypeCheckFlags,_imCast_Inh_MaybeScalarExpr :: (Maybe TypeExtra)} data Syn_MaybeScalarExpr = Syn_MaybeScalarExpr {_annotatedTree_Syn_MaybeScalarExpr :: MaybeScalarExpr,_originalTree_Syn_MaybeScalarExpr :: MaybeScalarExpr,_upType_Syn_MaybeScalarExpr :: (Maybe TypeExtra)} _wrap_MaybeScalarExpr :: T_MaybeScalarExpr -> Inh_MaybeScalarExpr -> Syn_MaybeScalarExpr _wrap_MaybeScalarExpr sem (Inh_MaybeScalarExpr _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType) = sem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast in (Syn_MaybeScalarExpr _lhsOannotatedTree _lhsOoriginalTree _lhsOupType)) _sem_MaybeScalarExpr_Just :: T_ScalarExpr -> T_MaybeScalarExpr _sem_MaybeScalarExpr_Just just_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _justOodbcFunction :: Bool _lhsOannotatedTree :: MaybeScalarExpr _lhsOoriginalTree :: MaybeScalarExpr _lhsOupType :: (Maybe TypeExtra) _justOassignmentCastContext :: Bool _justOcat :: Catalog _justOdownEnv :: Environment _justOexpectedCast :: Bool _justOexpectedType :: (Maybe TypeExtra) _justOflags :: TypeCheckFlags _justOimCast :: (Maybe TypeExtra) _justIannotatedTree :: ScalarExpr _justIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _justIoriginalTree :: ScalarExpr _justIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 146, column 12) _justOodbcFunction = ({-# LINE 146 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 6249 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIannotatedTree {-# LINE 6255 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIoriginalTree {-# LINE 6261 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6267 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6273 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOupType = ({-# LINE 109 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _justIupType {-# LINE 6279 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 6285 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 6291 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 6297 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOexpectedCast = ({-# LINE 111 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 6303 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOexpectedType = ({-# LINE 110 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedType {-# LINE 6309 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 6315 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 6321 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _justIannotatedTree,_justIcolExprs,_justIoriginalTree,_justIupType) = just_ _justOassignmentCastContext _justOcat _justOdownEnv _justOexpectedCast _justOexpectedType _justOflags _justOimCast _justOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) _sem_MaybeScalarExpr_Nothing :: T_MaybeScalarExpr _sem_MaybeScalarExpr_Nothing = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOupType :: (Maybe TypeExtra) _lhsOannotatedTree :: MaybeScalarExpr _lhsOoriginalTree :: MaybeScalarExpr -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 120, column 15) _lhsOupType = ({-# LINE 120 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 6342 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6348 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6354 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6360 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6366 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) -- MaybeSelectList --------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : MaybeSelectList originalTree : MaybeSelectList alternatives: alternative Just: child just : SelectList visit 0: local annotatedTree : _ local originalTree : _ alternative Nothing: visit 0: local annotatedTree : _ local originalTree : _ -} type MaybeSelectList = Maybe (SelectList) -- cata _sem_MaybeSelectList :: MaybeSelectList -> T_MaybeSelectList _sem_MaybeSelectList (Prelude.Just x) = (_sem_MaybeSelectList_Just (_sem_SelectList x)) _sem_MaybeSelectList Prelude.Nothing = _sem_MaybeSelectList_Nothing -- semantic domain type T_MaybeSelectList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( MaybeSelectList,MaybeSelectList) data Inh_MaybeSelectList = Inh_MaybeSelectList {_cat_Inh_MaybeSelectList :: Catalog,_flags_Inh_MaybeSelectList :: TypeCheckFlags,_imCast_Inh_MaybeSelectList :: (Maybe TypeExtra)} data Syn_MaybeSelectList = Syn_MaybeSelectList {_annotatedTree_Syn_MaybeSelectList :: MaybeSelectList,_originalTree_Syn_MaybeSelectList :: MaybeSelectList} _wrap_MaybeSelectList :: T_MaybeSelectList -> Inh_MaybeSelectList -> Syn_MaybeSelectList _wrap_MaybeSelectList sem (Inh_MaybeSelectList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_MaybeSelectList _lhsOannotatedTree _lhsOoriginalTree)) _sem_MaybeSelectList_Just :: T_SelectList -> T_MaybeSelectList _sem_MaybeSelectList_Just just_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _justOdownEnv :: Environment _justOexpectedCast :: Bool _justOexpectedType :: (Maybe [TypeExtra]) _justOassignmentCastContext :: Bool _lhsOannotatedTree :: MaybeSelectList _lhsOoriginalTree :: MaybeSelectList _justOcat :: Catalog _justOflags :: TypeCheckFlags _justOimCast :: (Maybe TypeExtra) _justIannotatedTree :: SelectList _justIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _justIoriginalTree :: SelectList _justIupEnv :: Environment _justIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 68, column 28) _justOdownEnv = ({-# LINE 68 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 6435 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 69, column 28) _justOexpectedCast = ({-# LINE 69 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 6441 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 70, column 28) _justOexpectedType = ({-# LINE 70 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 6447 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 815, column 28) _justOassignmentCastContext = ({-# LINE 815 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 6453 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIannotatedTree {-# LINE 6459 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIoriginalTree {-# LINE 6465 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6471 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6477 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 6483 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 6489 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 6495 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _justIannotatedTree,_justIcolExprs,_justIoriginalTree,_justIupEnv,_justIupType) = just_ _justOassignmentCastContext _justOcat _justOdownEnv _justOexpectedCast _justOexpectedType _justOflags _justOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_MaybeSelectList_Nothing :: T_MaybeSelectList _sem_MaybeSelectList_Nothing = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: MaybeSelectList _lhsOoriginalTree :: MaybeSelectList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6511 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6517 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6523 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- MaybeTablePartitionDef -------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : MaybeTablePartitionDef originalTree : MaybeTablePartitionDef alternatives: alternative Just: child just : TablePartitionDef visit 0: local annotatedTree : _ local originalTree : _ alternative Nothing: visit 0: local annotatedTree : _ local originalTree : _ -} type MaybeTablePartitionDef = Maybe (TablePartitionDef) -- cata _sem_MaybeTablePartitionDef :: MaybeTablePartitionDef -> T_MaybeTablePartitionDef _sem_MaybeTablePartitionDef (Prelude.Just x) = (_sem_MaybeTablePartitionDef_Just (_sem_TablePartitionDef x)) _sem_MaybeTablePartitionDef Prelude.Nothing = _sem_MaybeTablePartitionDef_Nothing -- semantic domain type T_MaybeTablePartitionDef = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( MaybeTablePartitionDef,MaybeTablePartitionDef) data Inh_MaybeTablePartitionDef = Inh_MaybeTablePartitionDef {_cat_Inh_MaybeTablePartitionDef :: Catalog,_flags_Inh_MaybeTablePartitionDef :: TypeCheckFlags,_imCast_Inh_MaybeTablePartitionDef :: (Maybe TypeExtra)} data Syn_MaybeTablePartitionDef = Syn_MaybeTablePartitionDef {_annotatedTree_Syn_MaybeTablePartitionDef :: MaybeTablePartitionDef,_originalTree_Syn_MaybeTablePartitionDef :: MaybeTablePartitionDef} _wrap_MaybeTablePartitionDef :: T_MaybeTablePartitionDef -> Inh_MaybeTablePartitionDef -> Syn_MaybeTablePartitionDef _wrap_MaybeTablePartitionDef sem (Inh_MaybeTablePartitionDef _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_MaybeTablePartitionDef _lhsOannotatedTree _lhsOoriginalTree)) _sem_MaybeTablePartitionDef_Just :: T_TablePartitionDef -> T_MaybeTablePartitionDef _sem_MaybeTablePartitionDef_Just just_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: MaybeTablePartitionDef _lhsOoriginalTree :: MaybeTablePartitionDef _justOcat :: Catalog _justOflags :: TypeCheckFlags _justOimCast :: (Maybe TypeExtra) _justIannotatedTree :: TablePartitionDef _justIoriginalTree :: TablePartitionDef -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIannotatedTree {-# LINE 6591 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIoriginalTree {-# LINE 6597 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6603 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6609 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 6615 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 6621 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 6627 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _justIannotatedTree,_justIoriginalTree) = just_ _justOcat _justOflags _justOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_MaybeTablePartitionDef_Nothing :: T_MaybeTablePartitionDef _sem_MaybeTablePartitionDef_Nothing = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: MaybeTablePartitionDef _lhsOoriginalTree :: MaybeTablePartitionDef -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6643 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 6649 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6655 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6661 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- Name -------------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra tpe : Either [TypeError] TypeExtra synthesized attributes: annotatedTree : Name originalTree : Name alternatives: alternative Name: child ann : Annotation child is : {[NameComponent]} visit 0: local annotatedTree : _ local originalTree : _ alternative AntiName: child string : {String} visit 0: local annotatedTree : _ local originalTree : _ -} data Name = Name (Annotation) (([NameComponent])) | AntiName (String) deriving ( Data,Eq,Show,Typeable) -- cata _sem_Name :: Name -> T_Name _sem_Name (Name _ann _is) = (_sem_Name_Name (_sem_Annotation _ann) _is) _sem_Name (AntiName _string) = (_sem_Name_AntiName _string) -- semantic domain type T_Name = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> (Either [TypeError] TypeExtra) -> ( Name,Name) data Inh_Name = Inh_Name {_cat_Inh_Name :: Catalog,_flags_Inh_Name :: TypeCheckFlags,_imCast_Inh_Name :: (Maybe TypeExtra),_tpe_Inh_Name :: (Either [TypeError] TypeExtra)} data Syn_Name = Syn_Name {_annotatedTree_Syn_Name :: Name,_originalTree_Syn_Name :: Name} _wrap_Name :: T_Name -> Inh_Name -> Syn_Name _wrap_Name sem (Inh_Name _lhsIcat _lhsIflags _lhsIimCast _lhsItpe) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast _lhsItpe in (Syn_Name _lhsOannotatedTree _lhsOoriginalTree)) _sem_Name_Name :: T_Annotation -> ([NameComponent]) -> T_Name _sem_Name_Name ann_ is_ = (\ _lhsIcat _lhsIflags _lhsIimCast _lhsItpe -> (let _lhsOannotatedTree :: Name _lhsOoriginalTree :: Name _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Name _annIannotatedTree is_ {-# LINE 6732 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Name _annIoriginalTree is_ {-# LINE 6738 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6744 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6750 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 6756 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 6762 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 6768 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsItpe {-# LINE 6774 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Name_AntiName :: String -> T_Name _sem_Name_AntiName string_ = (\ _lhsIcat _lhsIflags _lhsIimCast _lhsItpe -> (let _lhsOannotatedTree :: Name _lhsOoriginalTree :: Name -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AntiName string_ {-# LINE 6792 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AntiName string_ {-# LINE 6798 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6804 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6810 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- NameComponentList ------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : NameComponentList originalTree : NameComponentList alternatives: alternative Cons: child hd : {NameComponent} child tl : NameComponentList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type NameComponentList = [(NameComponent)] -- cata _sem_NameComponentList :: NameComponentList -> T_NameComponentList _sem_NameComponentList list = (Prelude.foldr _sem_NameComponentList_Cons _sem_NameComponentList_Nil list) -- semantic domain type T_NameComponentList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( NameComponentList,NameComponentList) data Inh_NameComponentList = Inh_NameComponentList {_cat_Inh_NameComponentList :: Catalog,_flags_Inh_NameComponentList :: TypeCheckFlags,_imCast_Inh_NameComponentList :: (Maybe TypeExtra)} data Syn_NameComponentList = Syn_NameComponentList {_annotatedTree_Syn_NameComponentList :: NameComponentList,_originalTree_Syn_NameComponentList :: NameComponentList} _wrap_NameComponentList :: T_NameComponentList -> Inh_NameComponentList -> Syn_NameComponentList _wrap_NameComponentList sem (Inh_NameComponentList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_NameComponentList _lhsOannotatedTree _lhsOoriginalTree)) _sem_NameComponentList_Cons :: NameComponent -> T_NameComponentList -> T_NameComponentList _sem_NameComponentList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: NameComponentList _lhsOoriginalTree :: NameComponentList _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _tlIannotatedTree :: NameComponentList _tlIoriginalTree :: NameComponentList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) hd_ _tlIannotatedTree {-# LINE 6872 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) hd_ _tlIoriginalTree {-# LINE 6878 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6884 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6890 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 6896 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 6902 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 6908 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_NameComponentList_Nil :: T_NameComponentList _sem_NameComponentList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: NameComponentList _lhsOoriginalTree :: NameComponentList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 6924 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 6930 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 6936 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 6942 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- NameTypeNameListPair ---------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : NameTypeNameListPair originalTree : NameTypeNameListPair alternatives: alternative Tuple: child x1 : Name child x2 : TypeNameList visit 0: local annotatedTree : _ local originalTree : _ -} type NameTypeNameListPair = ( Name,TypeNameList) -- cata _sem_NameTypeNameListPair :: NameTypeNameListPair -> T_NameTypeNameListPair _sem_NameTypeNameListPair ( x1,x2) = (_sem_NameTypeNameListPair_Tuple (_sem_Name x1) (_sem_TypeNameList x2)) -- semantic domain type T_NameTypeNameListPair = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( NameTypeNameListPair,NameTypeNameListPair) data Inh_NameTypeNameListPair = Inh_NameTypeNameListPair {_cat_Inh_NameTypeNameListPair :: Catalog,_flags_Inh_NameTypeNameListPair :: TypeCheckFlags,_imCast_Inh_NameTypeNameListPair :: (Maybe TypeExtra)} data Syn_NameTypeNameListPair = Syn_NameTypeNameListPair {_annotatedTree_Syn_NameTypeNameListPair :: NameTypeNameListPair,_originalTree_Syn_NameTypeNameListPair :: NameTypeNameListPair} _wrap_NameTypeNameListPair :: T_NameTypeNameListPair -> Inh_NameTypeNameListPair -> Syn_NameTypeNameListPair _wrap_NameTypeNameListPair sem (Inh_NameTypeNameListPair _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_NameTypeNameListPair _lhsOannotatedTree _lhsOoriginalTree)) _sem_NameTypeNameListPair_Tuple :: T_Name -> T_TypeNameList -> T_NameTypeNameListPair _sem_NameTypeNameListPair_Tuple x1_ x2_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _x1Otpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: NameTypeNameListPair _lhsOoriginalTree :: NameTypeNameListPair _x1Ocat :: Catalog _x1Oflags :: TypeCheckFlags _x1OimCast :: (Maybe TypeExtra) _x2Ocat :: Catalog _x2Oflags :: TypeCheckFlags _x2OimCast :: (Maybe TypeExtra) _x1IannotatedTree :: Name _x1IoriginalTree :: Name _x2IannotatedTree :: TypeNameList _x2IoriginalTree :: TypeNameList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 71, column 34) _x1Otpe = ({-# LINE 71 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 7006 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IannotatedTree,_x2IannotatedTree) {-# LINE 7012 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IoriginalTree,_x2IoriginalTree) {-# LINE 7018 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7024 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7030 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7036 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7042 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7048 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7054 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7060 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7066 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _x1IannotatedTree,_x1IoriginalTree) = x1_ _x1Ocat _x1Oflags _x1OimCast _x1Otpe ( _x2IannotatedTree,_x2IoriginalTree) = x2_ _x2Ocat _x2Oflags _x2OimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- NameTypeNameListPairList ------------------------------------ {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : NameTypeNameListPairList originalTree : NameTypeNameListPairList alternatives: alternative Cons: child hd : NameTypeNameListPair child tl : NameTypeNameListPairList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type NameTypeNameListPairList = [NameTypeNameListPair] -- cata _sem_NameTypeNameListPairList :: NameTypeNameListPairList -> T_NameTypeNameListPairList _sem_NameTypeNameListPairList list = (Prelude.foldr _sem_NameTypeNameListPairList_Cons _sem_NameTypeNameListPairList_Nil (Prelude.map _sem_NameTypeNameListPair list)) -- semantic domain type T_NameTypeNameListPairList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( NameTypeNameListPairList,NameTypeNameListPairList) data Inh_NameTypeNameListPairList = Inh_NameTypeNameListPairList {_cat_Inh_NameTypeNameListPairList :: Catalog,_flags_Inh_NameTypeNameListPairList :: TypeCheckFlags,_imCast_Inh_NameTypeNameListPairList :: (Maybe TypeExtra)} data Syn_NameTypeNameListPairList = Syn_NameTypeNameListPairList {_annotatedTree_Syn_NameTypeNameListPairList :: NameTypeNameListPairList,_originalTree_Syn_NameTypeNameListPairList :: NameTypeNameListPairList} _wrap_NameTypeNameListPairList :: T_NameTypeNameListPairList -> Inh_NameTypeNameListPairList -> Syn_NameTypeNameListPairList _wrap_NameTypeNameListPairList sem (Inh_NameTypeNameListPairList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_NameTypeNameListPairList _lhsOannotatedTree _lhsOoriginalTree)) _sem_NameTypeNameListPairList_Cons :: T_NameTypeNameListPair -> T_NameTypeNameListPairList -> T_NameTypeNameListPairList _sem_NameTypeNameListPairList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: NameTypeNameListPairList _lhsOoriginalTree :: NameTypeNameListPairList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: NameTypeNameListPair _hdIoriginalTree :: NameTypeNameListPair _tlIannotatedTree :: NameTypeNameListPairList _tlIoriginalTree :: NameTypeNameListPairList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 7137 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 7143 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7149 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7155 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7161 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7167 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7173 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7179 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7185 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7191 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_NameTypeNameListPairList_Nil :: T_NameTypeNameListPairList _sem_NameTypeNameListPairList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: NameTypeNameListPairList _lhsOoriginalTree :: NameTypeNameListPairList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 7209 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 7215 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7221 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7227 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- OnExpr ------------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : OnExpr originalTree : OnExpr alternatives: alternative Just: child just : JoinExpr visit 0: local annotatedTree : _ local originalTree : _ alternative Nothing: visit 0: local annotatedTree : _ local originalTree : _ -} type OnExpr = Maybe (JoinExpr) -- cata _sem_OnExpr :: OnExpr -> T_OnExpr _sem_OnExpr (Prelude.Just x) = (_sem_OnExpr_Just (_sem_JoinExpr x)) _sem_OnExpr Prelude.Nothing = _sem_OnExpr_Nothing -- semantic domain type T_OnExpr = Catalog -> Environment -> TypeCheckFlags -> (Maybe TypeExtra) -> ( OnExpr,OnExpr) data Inh_OnExpr = Inh_OnExpr {_cat_Inh_OnExpr :: Catalog,_downEnv_Inh_OnExpr :: Environment,_flags_Inh_OnExpr :: TypeCheckFlags,_imCast_Inh_OnExpr :: (Maybe TypeExtra)} data Syn_OnExpr = Syn_OnExpr {_annotatedTree_Syn_OnExpr :: OnExpr,_originalTree_Syn_OnExpr :: OnExpr} _wrap_OnExpr :: T_OnExpr -> Inh_OnExpr -> Syn_OnExpr _wrap_OnExpr sem (Inh_OnExpr _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast in (Syn_OnExpr _lhsOannotatedTree _lhsOoriginalTree)) _sem_OnExpr_Just :: T_JoinExpr -> T_OnExpr _sem_OnExpr_Just just_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: OnExpr _lhsOoriginalTree :: OnExpr _justOcat :: Catalog _justOdownEnv :: Environment _justOflags :: TypeCheckFlags _justOimCast :: (Maybe TypeExtra) _justIannotatedTree :: JoinExpr _justIoriginalTree :: JoinExpr -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIannotatedTree {-# LINE 7293 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Just _justIoriginalTree {-# LINE 7299 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7305 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7311 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7317 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOdownEnv = ({-# LINE 215 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIdownEnv {-# LINE 7323 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7329 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _justOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7335 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _justIannotatedTree,_justIoriginalTree) = just_ _justOcat _justOdownEnv _justOflags _justOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_OnExpr_Nothing :: T_OnExpr _sem_OnExpr_Nothing = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: OnExpr _lhsOoriginalTree :: OnExpr -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 7352 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 7358 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7364 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7370 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ParamDef ---------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ParamDef originalTree : ParamDef alternatives: alternative ParamDef: child ann : Annotation child name : {NameComponent} child typ : TypeName visit 0: local annotatedTree : _ local originalTree : _ alternative ParamDefTp: child ann : Annotation child typ : TypeName visit 0: local annotatedTree : _ local originalTree : _ -} data ParamDef = ParamDef (Annotation) (NameComponent) (TypeName) | ParamDefTp (Annotation) (TypeName) deriving ( Data,Eq,Show,Typeable) -- cata _sem_ParamDef :: ParamDef -> T_ParamDef _sem_ParamDef (ParamDef _ann _name _typ) = (_sem_ParamDef_ParamDef (_sem_Annotation _ann) _name (_sem_TypeName _typ)) _sem_ParamDef (ParamDefTp _ann _typ) = (_sem_ParamDef_ParamDefTp (_sem_Annotation _ann) (_sem_TypeName _typ)) -- semantic domain type T_ParamDef = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ParamDef,ParamDef) data Inh_ParamDef = Inh_ParamDef {_cat_Inh_ParamDef :: Catalog,_flags_Inh_ParamDef :: TypeCheckFlags,_imCast_Inh_ParamDef :: (Maybe TypeExtra)} data Syn_ParamDef = Syn_ParamDef {_annotatedTree_Syn_ParamDef :: ParamDef,_originalTree_Syn_ParamDef :: ParamDef} _wrap_ParamDef :: T_ParamDef -> Inh_ParamDef -> Syn_ParamDef _wrap_ParamDef sem (Inh_ParamDef _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_ParamDef _lhsOannotatedTree _lhsOoriginalTree)) _sem_ParamDef_ParamDef :: T_Annotation -> NameComponent -> T_TypeName -> T_ParamDef _sem_ParamDef_ParamDef ann_ name_ typ_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: ParamDef _lhsOoriginalTree :: ParamDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 72, column 25) _annOtpe = ({-# LINE 72 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 7447 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ParamDef _annIannotatedTree name_ _typIannotatedTree {-# LINE 7453 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ParamDef _annIoriginalTree name_ _typIoriginalTree {-# LINE 7459 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7465 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7471 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7477 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7483 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7489 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7495 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7501 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7507 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_ParamDef_ParamDefTp :: T_Annotation -> T_TypeName -> T_ParamDef _sem_ParamDef_ParamDefTp ann_ typ_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: ParamDef _lhsOoriginalTree :: ParamDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 73, column 27) _annOtpe = ({-# LINE 73 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 7539 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ParamDefTp _annIannotatedTree _typIannotatedTree {-# LINE 7545 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ParamDefTp _annIoriginalTree _typIoriginalTree {-# LINE 7551 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7557 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7563 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7569 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7575 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7581 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7587 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7593 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7599 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ParamDefList ------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ParamDefList originalTree : ParamDefList alternatives: alternative Cons: child hd : ParamDef child tl : ParamDefList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ParamDefList = [ParamDef] -- cata _sem_ParamDefList :: ParamDefList -> T_ParamDefList _sem_ParamDefList list = (Prelude.foldr _sem_ParamDefList_Cons _sem_ParamDefList_Nil (Prelude.map _sem_ParamDef list)) -- semantic domain type T_ParamDefList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ParamDefList,ParamDefList) data Inh_ParamDefList = Inh_ParamDefList {_cat_Inh_ParamDefList :: Catalog,_flags_Inh_ParamDefList :: TypeCheckFlags,_imCast_Inh_ParamDefList :: (Maybe TypeExtra)} data Syn_ParamDefList = Syn_ParamDefList {_annotatedTree_Syn_ParamDefList :: ParamDefList,_originalTree_Syn_ParamDefList :: ParamDefList} _wrap_ParamDefList :: T_ParamDefList -> Inh_ParamDefList -> Syn_ParamDefList _wrap_ParamDefList sem (Inh_ParamDefList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_ParamDefList _lhsOannotatedTree _lhsOoriginalTree)) _sem_ParamDefList_Cons :: T_ParamDef -> T_ParamDefList -> T_ParamDefList _sem_ParamDefList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ParamDefList _lhsOoriginalTree :: ParamDefList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: ParamDef _hdIoriginalTree :: ParamDef _tlIannotatedTree :: ParamDefList _tlIoriginalTree :: ParamDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 7670 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 7676 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7682 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7688 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7694 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7700 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7706 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 7712 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 7718 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 7724 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_ParamDefList_Nil :: T_ParamDefList _sem_ParamDefList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ParamDefList _lhsOoriginalTree :: ParamDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 7742 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 7748 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 7754 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 7760 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- QueryExpr --------------------------------------------------- {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog expectedType : Maybe [TypeExtra] flags : TypeCheckFlags imCast : Maybe TypeExtra outerDownEnv : Maybe Environment synthesized attributes: annotatedTree : QueryExpr originalTree : QueryExpr upType : Maybe [(Text,TypeExtra)] alternatives: alternative Select: child ann : Annotation child selDistinct : {Distinct} child selSelectList : SelectList child selTref : TableRefList child selWhere : MaybeBoolExpr child selGroupBy : ScalarExprList child selHaving : MaybeBoolExpr child selOrderBy : ScalarExprDirectionPairList child selLimit : MaybeScalarExpr child selOffset : MaybeScalarExpr child selOption : {[QueryHint]} visit 0: local tpee : {Either [TypeError] [(Text,TypeExtra)]} local tpe : {Either [TypeError] TypeExtra} local selGroupBy : _ local annotatedTree : _ local originalTree : _ alternative CombineQueryExpr: child ann : Annotation child cqType : {CombineType} child cqQe0 : QueryExpr child cqQe1 : QueryExpr visit 0: local tpe : {Either [TypeError] TypeExtra} local tpee : {Either [TypeError] [(Text,TypeExtra)]} local annotatedTree : _ local originalTree : _ alternative Values: child ann : Annotation child qeValues : ScalarExprListList visit 0: local tpe : {Either [TypeError] TypeExtra} local tpee : {Either [TypeError] [(Text,TypeExtra)]} local annotatedTree : _ local originalTree : _ alternative WithQueryExpr: child ann : Annotation child withs : WithQueryList child withQe : QueryExpr visit 0: local tpe : {Either [TypeError] TypeExtra} local tpee : {Either [TypeError] [(Text,TypeExtra)]} local annotatedTree : _ local originalTree : _ -} data QueryExpr = Select { ann:: (Annotation) ,selDistinct :: ( Distinct) ,selSelectList :: ( SelectList) ,selTref :: ( TableRefList) ,selWhere :: ( MaybeBoolExpr) ,selGroupBy :: ( ScalarExprList) ,selHaving :: ( MaybeBoolExpr) ,selOrderBy :: ( ScalarExprDirectionPairList) ,selLimit :: ( MaybeScalarExpr) ,selOffset :: ( MaybeScalarExpr) ,selOption :: ( [QueryHint]) } | CombineQueryExpr { ann:: (Annotation) ,cqType :: ( CombineType) ,cqQe0 :: ( QueryExpr) ,cqQe1 :: ( QueryExpr) } | Values { ann:: (Annotation) ,qeValues:: (ScalarExprListList) } | WithQueryExpr { ann :: ( Annotation) ,withs :: ( WithQueryList) ,withQe :: ( QueryExpr) -- todo: represent parens explicitly in queryexpr -- | QueryExprParens ex:: QueryExpr } deriving (Eq,Show,Data,Typeable) -- cata _sem_QueryExpr :: QueryExpr -> T_QueryExpr _sem_QueryExpr (Select _ann _selDistinct _selSelectList _selTref _selWhere _selGroupBy _selHaving _selOrderBy _selLimit _selOffset _selOption) = (_sem_QueryExpr_Select (_sem_Annotation _ann) _selDistinct (_sem_SelectList _selSelectList) (_sem_TableRefList _selTref) (_sem_MaybeBoolExpr _selWhere) (_sem_ScalarExprList _selGroupBy) (_sem_MaybeBoolExpr _selHaving) (_sem_ScalarExprDirectionPairList _selOrderBy) (_sem_MaybeScalarExpr _selLimit) (_sem_MaybeScalarExpr _selOffset) _selOption) _sem_QueryExpr (CombineQueryExpr _ann _cqType _cqQe0 _cqQe1) = (_sem_QueryExpr_CombineQueryExpr (_sem_Annotation _ann) _cqType (_sem_QueryExpr _cqQe0) (_sem_QueryExpr _cqQe1)) _sem_QueryExpr (Values _ann _qeValues) = (_sem_QueryExpr_Values (_sem_Annotation _ann) (_sem_ScalarExprListList _qeValues)) _sem_QueryExpr (WithQueryExpr _ann _withs _withQe) = (_sem_QueryExpr_WithQueryExpr (_sem_Annotation _ann) (_sem_WithQueryList _withs) (_sem_QueryExpr _withQe)) -- semantic domain type T_QueryExpr = Bool -> Catalog -> (Maybe [TypeExtra]) -> TypeCheckFlags -> (Maybe TypeExtra) -> (Maybe Environment) -> ( QueryExpr,QueryExpr,(Maybe [(Text,TypeExtra)])) data Inh_QueryExpr = Inh_QueryExpr {_assignmentCastContext_Inh_QueryExpr :: Bool,_cat_Inh_QueryExpr :: Catalog,_expectedType_Inh_QueryExpr :: (Maybe [TypeExtra]),_flags_Inh_QueryExpr :: TypeCheckFlags,_imCast_Inh_QueryExpr :: (Maybe TypeExtra),_outerDownEnv_Inh_QueryExpr :: (Maybe Environment)} data Syn_QueryExpr = Syn_QueryExpr {_annotatedTree_Syn_QueryExpr :: QueryExpr,_originalTree_Syn_QueryExpr :: QueryExpr,_upType_Syn_QueryExpr :: (Maybe [(Text,TypeExtra)])} _wrap_QueryExpr :: T_QueryExpr -> Inh_QueryExpr -> Syn_QueryExpr _wrap_QueryExpr sem (Inh_QueryExpr _lhsIassignmentCastContext _lhsIcat _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIouterDownEnv) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType) = sem _lhsIassignmentCastContext _lhsIcat _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIouterDownEnv in (Syn_QueryExpr _lhsOannotatedTree _lhsOoriginalTree _lhsOupType)) _sem_QueryExpr_Select :: T_Annotation -> Distinct -> T_SelectList -> T_TableRefList -> T_MaybeBoolExpr -> T_ScalarExprList -> T_MaybeBoolExpr -> T_ScalarExprDirectionPairList -> T_MaybeScalarExpr -> T_MaybeScalarExpr -> ([QueryHint]) -> T_QueryExpr _sem_QueryExpr_Select ann_ selDistinct_ selSelectList_ selTref_ selWhere_ selGroupBy_ selHaving_ selOrderBy_ selLimit_ selOffset_ selOption_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIouterDownEnv -> (let _selGroupByOexpectedCast :: Bool _selLimitOdownEnv :: Environment _selLimitOexpectedCast :: Bool _selOffsetOdownEnv :: Environment _selOffsetOexpectedCast :: Bool _selSelectListOexpectedCast :: Bool _selSelectListOdownEnv :: Environment _selGroupByOdownEnv :: Environment _selHavingOdownEnv :: Environment _selOrderByOdownEnv :: Environment _tpee :: (Either [TypeError] [(Text,TypeExtra)]) _selWhereOdownEnv :: Environment _tpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe [(Text,TypeExtra)]) _lhsOannotatedTree :: QueryExpr _selGroupByOexpectedTypes :: ([TypeExtra]) _selLimitOexpectedType :: (Maybe TypeExtra) _selOffsetOexpectedType :: (Maybe TypeExtra) _lhsOoriginalTree :: QueryExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _selSelectListOassignmentCastContext :: Bool _selSelectListOcat :: Catalog _selSelectListOexpectedType :: (Maybe [TypeExtra]) _selSelectListOflags :: TypeCheckFlags _selSelectListOimCast :: (Maybe TypeExtra) _selTrefOcat :: Catalog _selTrefOflags :: TypeCheckFlags _selTrefOimCast :: (Maybe TypeExtra) _selWhereOcat :: Catalog _selWhereOflags :: TypeCheckFlags _selWhereOimCast :: (Maybe TypeExtra) _selGroupByOassignmentCastContext :: Bool _selGroupByOcat :: Catalog _selGroupByOflags :: TypeCheckFlags _selGroupByOimCast :: (Maybe TypeExtra) _selHavingOcat :: Catalog _selHavingOflags :: TypeCheckFlags _selHavingOimCast :: (Maybe TypeExtra) _selOrderByOcat :: Catalog _selOrderByOflags :: TypeCheckFlags _selOrderByOimCast :: (Maybe TypeExtra) _selLimitOassignmentCastContext :: Bool _selLimitOcat :: Catalog _selLimitOflags :: TypeCheckFlags _selLimitOimCast :: (Maybe TypeExtra) _selOffsetOassignmentCastContext :: Bool _selOffsetOcat :: Catalog _selOffsetOflags :: TypeCheckFlags _selOffsetOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _selSelectListIannotatedTree :: SelectList _selSelectListIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _selSelectListIoriginalTree :: SelectList _selSelectListIupEnv :: Environment _selSelectListIupType :: (Maybe [(Text,TypeExtra)]) _selTrefIannotatedTree :: TableRefList _selTrefIoriginalTree :: TableRefList _selTrefIupEnv :: Environment _selWhereIannotatedTree :: MaybeBoolExpr _selWhereIoriginalTree :: MaybeBoolExpr _selGroupByIannotatedTree :: ScalarExprList _selGroupByIoriginalTree :: ScalarExprList _selGroupByIupTypes :: ([Maybe TypeExtra]) _selHavingIannotatedTree :: MaybeBoolExpr _selHavingIoriginalTree :: MaybeBoolExpr _selOrderByIannotatedTree :: ScalarExprDirectionPairList _selOrderByIoriginalTree :: ScalarExprDirectionPairList _selLimitIannotatedTree :: MaybeScalarExpr _selLimitIoriginalTree :: MaybeScalarExpr _selLimitIupType :: (Maybe TypeExtra) _selOffsetIannotatedTree :: MaybeScalarExpr _selOffsetIoriginalTree :: MaybeScalarExpr _selOffsetIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 74, column 24) _selGroupByOexpectedCast = ({-# LINE 74 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 7956 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 75, column 24) _selLimitOdownEnv = ({-# LINE 75 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 7962 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 76, column 24) _selLimitOexpectedCast = ({-# LINE 76 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 7968 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 77, column 24) _selOffsetOdownEnv = ({-# LINE 77 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 7974 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 78, column 24) _selOffsetOexpectedCast = ({-# LINE 78 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 7980 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 79, column 24) _selSelectListOexpectedCast = ({-# LINE 79 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 7986 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 106, column 9) _selSelectListOdownEnv = ({-# LINE 106 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _selTrefIupEnv {-# LINE 7992 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 107, column 9) _selGroupByOdownEnv = ({-# LINE 107 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _selTrefIupEnv {-# LINE 7998 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 108, column 9) _selHavingOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _selTrefIupEnv {-# LINE 8004 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 128, column 9) _selOrderByOdownEnv = ({-# LINE 128 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} E.orderByEnvironment _selSelectListIupEnv _selTrefIupEnv {-# LINE 8010 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 129, column 9) _tpee = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} maybe (Left []) Right _selSelectListIupType {-# LINE 8016 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 132, column 9) _selWhereOdownEnv = ({-# LINE 132 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} maybe _selTrefIupEnv (\e -> E.createCorrelatedSubqueryEnvironment e _selTrefIupEnv) _lhsIouterDownEnv {-# LINE 8024 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 142, column 9) _tpe = ({-# LINE 142 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM (mkTypeExtra . CompositeType) _tpee {-# LINE 8030 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 145, column 9) _lhsOupType = ({-# LINE 145 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} either (const Nothing) Just _tpee {-# LINE 8036 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 239, column 9) _selGroupBy = ({-# LINE 239 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} case _selGroupByIannotatedTree of [App e nm@(Name _ [Nmc "cube"]) es] -> [App e{anType = (Just (mkTypeExtra $ ScalarType "int4")) ,anErrs = [] } nm es] x -> x {-# LINE 8047 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 248, column 9) _lhsOannotatedTree = ({-# LINE 248 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Select _annIannotatedTree selDistinct_ _selSelectListIannotatedTree _selTrefIannotatedTree _selWhereIannotatedTree _selGroupBy _selHavingIannotatedTree _selOrderByIannotatedTree _selLimitIannotatedTree _selOffsetIannotatedTree selOption_ {-# LINE 8063 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 766, column 7) _selGroupByOexpectedTypes = ({-# LINE 766 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} [] {-# LINE 8069 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 767, column 7) _selLimitOexpectedType = ({-# LINE 767 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 8075 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 768, column 7) _selOffsetOexpectedType = ({-# LINE 768 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 8081 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Select _annIannotatedTree selDistinct_ _selSelectListIannotatedTree _selTrefIannotatedTree _selWhereIannotatedTree _selGroupByIannotatedTree _selHavingIannotatedTree _selOrderByIannotatedTree _selLimitIannotatedTree _selOffsetIannotatedTree selOption_ {-# LINE 8087 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Select _annIoriginalTree selDistinct_ _selSelectListIoriginalTree _selTrefIoriginalTree _selWhereIoriginalTree _selGroupByIoriginalTree _selHavingIoriginalTree _selOrderByIoriginalTree _selLimitIoriginalTree _selOffsetIoriginalTree selOption_ {-# LINE 8093 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 8099 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8105 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8111 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8117 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 8123 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selSelectListOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8129 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selSelectListOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8135 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selSelectListOexpectedType = ({-# LINE 159 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedType {-# LINE 8141 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selSelectListOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8147 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selSelectListOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8153 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selTrefOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8159 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selTrefOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8165 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selTrefOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8171 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selWhereOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8177 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selWhereOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8183 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selWhereOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8189 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selGroupByOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8195 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selGroupByOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8201 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selGroupByOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8207 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selGroupByOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8213 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selHavingOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8219 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selHavingOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8225 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selHavingOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8231 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOrderByOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8237 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOrderByOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8243 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOrderByOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8249 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selLimitOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8255 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selLimitOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8261 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selLimitOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8267 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selLimitOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8273 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOffsetOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8279 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOffsetOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8285 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOffsetOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8291 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOffsetOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8297 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _selSelectListIannotatedTree,_selSelectListIcolExprs,_selSelectListIoriginalTree,_selSelectListIupEnv,_selSelectListIupType) = selSelectList_ _selSelectListOassignmentCastContext _selSelectListOcat _selSelectListOdownEnv _selSelectListOexpectedCast _selSelectListOexpectedType _selSelectListOflags _selSelectListOimCast ( _selTrefIannotatedTree,_selTrefIoriginalTree,_selTrefIupEnv) = selTref_ _selTrefOcat _selTrefOflags _selTrefOimCast ( _selWhereIannotatedTree,_selWhereIoriginalTree) = selWhere_ _selWhereOcat _selWhereOdownEnv _selWhereOflags _selWhereOimCast ( _selGroupByIannotatedTree,_selGroupByIoriginalTree,_selGroupByIupTypes) = selGroupBy_ _selGroupByOassignmentCastContext _selGroupByOcat _selGroupByOdownEnv _selGroupByOexpectedCast _selGroupByOexpectedTypes _selGroupByOflags _selGroupByOimCast ( _selHavingIannotatedTree,_selHavingIoriginalTree) = selHaving_ _selHavingOcat _selHavingOdownEnv _selHavingOflags _selHavingOimCast ( _selOrderByIannotatedTree,_selOrderByIoriginalTree) = selOrderBy_ _selOrderByOcat _selOrderByOdownEnv _selOrderByOflags _selOrderByOimCast ( _selLimitIannotatedTree,_selLimitIoriginalTree,_selLimitIupType) = selLimit_ _selLimitOassignmentCastContext _selLimitOcat _selLimitOdownEnv _selLimitOexpectedCast _selLimitOexpectedType _selLimitOflags _selLimitOimCast ( _selOffsetIannotatedTree,_selOffsetIoriginalTree,_selOffsetIupType) = selOffset_ _selOffsetOassignmentCastContext _selOffsetOcat _selOffsetOdownEnv _selOffsetOexpectedCast _selOffsetOexpectedType _selOffsetOflags _selOffsetOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) _sem_QueryExpr_CombineQueryExpr :: T_Annotation -> CombineType -> T_QueryExpr -> T_QueryExpr -> T_QueryExpr _sem_QueryExpr_CombineQueryExpr ann_ cqType_ cqQe0_ cqQe1_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIouterDownEnv -> (let _tpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe [(Text,TypeExtra)]) _tpee :: (Either [TypeError] [(Text,TypeExtra)]) _lhsOannotatedTree :: QueryExpr _lhsOoriginalTree :: QueryExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _cqQe0OassignmentCastContext :: Bool _cqQe0Ocat :: Catalog _cqQe0OexpectedType :: (Maybe [TypeExtra]) _cqQe0Oflags :: TypeCheckFlags _cqQe0OimCast :: (Maybe TypeExtra) _cqQe0OouterDownEnv :: (Maybe Environment) _cqQe1OassignmentCastContext :: Bool _cqQe1Ocat :: Catalog _cqQe1OexpectedType :: (Maybe [TypeExtra]) _cqQe1Oflags :: TypeCheckFlags _cqQe1OimCast :: (Maybe TypeExtra) _cqQe1OouterDownEnv :: (Maybe Environment) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _cqQe0IannotatedTree :: QueryExpr _cqQe0IoriginalTree :: QueryExpr _cqQe0IupType :: (Maybe [(Text,TypeExtra)]) _cqQe1IannotatedTree :: QueryExpr _cqQe1IoriginalTree :: QueryExpr _cqQe1IupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 142, column 9) _tpe = ({-# LINE 142 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM (mkTypeExtra . CompositeType) _tpee {-# LINE 8363 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 145, column 9) _lhsOupType = ({-# LINE 145 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} either (const Nothing) Just _tpee {-# LINE 8369 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 156, column 9) _tpee = ({-# LINE 156 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} do a <- maybe (Left []) Right _cqQe0IupType b <- maybe (Left []) Right _cqQe1IupType unless (length a == length b) $ Left [IncompatibleUnionTypes (CompositeType a) (CompositeType b)] let uts = zipWithM (\(_,te1) (_,te2) -> resolveResultSetTypeExtra _lhsIcat [te1,te2]) a b case uts of Left{} -> Left [IncompatibleUnionTypes (CompositeType a) (CompositeType b)] Right uts' -> return $ zipWith (\(n,_) te -> (n,te)) a uts' {-# LINE 8383 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CombineQueryExpr _annIannotatedTree cqType_ _cqQe0IannotatedTree _cqQe1IannotatedTree {-# LINE 8389 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CombineQueryExpr _annIoriginalTree cqType_ _cqQe0IoriginalTree _cqQe1IoriginalTree {-# LINE 8395 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 8401 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 8407 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8413 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8419 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8425 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 8431 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe0OassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8437 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe0Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8443 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe0OexpectedType = ({-# LINE 18 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedType {-# LINE 8449 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe0Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8455 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe0OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8461 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe0OouterDownEnv = ({-# LINE 89 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIouterDownEnv {-# LINE 8467 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe1OassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8473 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8479 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe1OexpectedType = ({-# LINE 18 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedType {-# LINE 8485 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8491 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8497 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _cqQe1OouterDownEnv = ({-# LINE 89 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIouterDownEnv {-# LINE 8503 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _cqQe0IannotatedTree,_cqQe0IoriginalTree,_cqQe0IupType) = cqQe0_ _cqQe0OassignmentCastContext _cqQe0Ocat _cqQe0OexpectedType _cqQe0Oflags _cqQe0OimCast _cqQe0OouterDownEnv ( _cqQe1IannotatedTree,_cqQe1IoriginalTree,_cqQe1IupType) = cqQe1_ _cqQe1OassignmentCastContext _cqQe1Ocat _cqQe1OexpectedType _cqQe1Oflags _cqQe1OimCast _cqQe1OouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) _sem_QueryExpr_Values :: T_Annotation -> T_ScalarExprListList -> T_QueryExpr _sem_QueryExpr_Values ann_ qeValues_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIouterDownEnv -> (let _qeValuesOdownEnv :: Environment _tpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe [(Text,TypeExtra)]) _tpee :: (Either [TypeError] [(Text,TypeExtra)]) _qeValuesOexpectedCast :: Bool _lhsOannotatedTree :: QueryExpr _lhsOoriginalTree :: QueryExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _qeValuesOassignmentCastContext :: Bool _qeValuesOcat :: Catalog _qeValuesOexpectedType :: (Maybe [TypeExtra]) _qeValuesOflags :: TypeCheckFlags _qeValuesOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _qeValuesIannotatedTree :: ScalarExprListList _qeValuesIoriginalTree :: ScalarExprListList _qeValuesIupType :: (Either [TypeError] [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 80, column 24) _qeValuesOdownEnv = ({-# LINE 80 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 8547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 142, column 9) _tpe = ({-# LINE 142 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM (mkTypeExtra . CompositeType) _tpee {-# LINE 8553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 145, column 9) _lhsOupType = ({-# LINE 145 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} either (const Nothing) Just _tpee {-# LINE 8559 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 153, column 9) _tpee = ({-# LINE 153 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _qeValuesIupType {-# LINE 8565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 154, column 9) _qeValuesOexpectedCast = ({-# LINE 154 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} True {-# LINE 8571 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Values _annIannotatedTree _qeValuesIannotatedTree {-# LINE 8577 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Values _annIoriginalTree _qeValuesIoriginalTree {-# LINE 8583 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 8589 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 8595 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8601 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8607 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8613 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 8619 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _qeValuesOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8625 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _qeValuesOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8631 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _qeValuesOexpectedType = ({-# LINE 186 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedType {-# LINE 8637 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _qeValuesOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8643 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _qeValuesOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8649 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _qeValuesIannotatedTree,_qeValuesIoriginalTree,_qeValuesIupType) = qeValues_ _qeValuesOassignmentCastContext _qeValuesOcat _qeValuesOdownEnv _qeValuesOexpectedCast _qeValuesOexpectedType _qeValuesOflags _qeValuesOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) _sem_QueryExpr_WithQueryExpr :: T_Annotation -> T_WithQueryList -> T_QueryExpr -> T_QueryExpr _sem_QueryExpr_WithQueryExpr ann_ withs_ withQe_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIouterDownEnv -> (let _withQeOcat :: Catalog _withsOcatExtIncomp :: (Either [TypeError] Catalog) _lhsOannotatedTree :: QueryExpr _tpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe [(Text,TypeExtra)]) _tpee :: (Either [TypeError] [(Text,TypeExtra)]) _lhsOoriginalTree :: QueryExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _withsOcat :: Catalog _withsOflags :: TypeCheckFlags _withsOimCast :: (Maybe TypeExtra) _withQeOassignmentCastContext :: Bool _withQeOexpectedType :: (Maybe [TypeExtra]) _withQeOflags :: TypeCheckFlags _withQeOimCast :: (Maybe TypeExtra) _withQeOouterDownEnv :: (Maybe Environment) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _withsIannotatedTree :: WithQueryList _withsIcatExtComp :: (Either [TypeError] Catalog) _withsIoriginalTree :: WithQueryList _withQeIannotatedTree :: QueryExpr _withQeIoriginalTree :: QueryExpr _withQeIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 70, column 8) _withQeOcat = ({-# LINE 70 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} case _withsIcatExtComp of Right catExtComp -> catExtComp Left _ -> _lhsIcat {-# LINE 8700 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 74, column 8) _withsOcatExtIncomp = ({-# LINE 74 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} return _lhsIcat {-# LINE 8706 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 76, column 8) _lhsOannotatedTree = ({-# LINE 76 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} case _withsIcatExtComp of Right _ -> WithQueryExpr (_annIannotatedTree) (_withsIannotatedTree) (_withQeIannotatedTree) Left tyErrs -> WithQueryExpr (emptyAnnotation { anType = Nothing, anErrs = tyErrs }) (_withsIannotatedTree) (_withQeIannotatedTree) {-# LINE 8715 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 142, column 9) _tpe = ({-# LINE 142 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM (mkTypeExtra . CompositeType) _tpee {-# LINE 8721 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 145, column 9) _lhsOupType = ({-# LINE 145 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} either (const Nothing) Just _tpee {-# LINE 8727 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 151, column 9) _tpee = ({-# LINE 151 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} maybe (Left []) Right _withQeIupType {-# LINE 8733 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WithQueryExpr _annIannotatedTree _withsIannotatedTree _withQeIannotatedTree {-# LINE 8739 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WithQueryExpr _annIoriginalTree _withsIoriginalTree _withQeIoriginalTree {-# LINE 8745 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 8751 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8757 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8763 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8769 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _annOtpe = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _tpe {-# LINE 8775 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8781 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8787 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8793 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withQeOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 8799 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withQeOexpectedType = ({-# LINE 18 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedType {-# LINE 8805 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withQeOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8811 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withQeOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 8817 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _withQeOouterDownEnv = ({-# LINE 89 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIouterDownEnv {-# LINE 8823 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _withsIannotatedTree,_withsIcatExtComp,_withsIoriginalTree) = withs_ _withsOcat _withsOcatExtIncomp _withsOflags _withsOimCast ( _withQeIannotatedTree,_withQeIoriginalTree,_withQeIupType) = withQe_ _withQeOassignmentCastContext _withQeOcat _withQeOexpectedType _withQeOflags _withQeOimCast _withQeOouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) -- Root -------------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags synthesized attributes: annotatedTree : Root originalTree : Root alternatives: alternative Root: child statements : StatementList visit 0: local annotatedTree : _ local originalTree : _ -} data Root = Root (StatementList) deriving ( Show) -- cata _sem_Root :: Root -> T_Root _sem_Root (Root _statements) = (_sem_Root_Root (_sem_StatementList _statements)) -- semantic domain type T_Root = Catalog -> TypeCheckFlags -> ( Root,Root) data Inh_Root = Inh_Root {_cat_Inh_Root :: Catalog,_flags_Inh_Root :: TypeCheckFlags} data Syn_Root = Syn_Root {_annotatedTree_Syn_Root :: Root,_originalTree_Syn_Root :: Root} _wrap_Root :: T_Root -> Inh_Root -> Syn_Root _wrap_Root sem (Inh_Root _lhsIcat _lhsIflags) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags in (Syn_Root _lhsOannotatedTree _lhsOoriginalTree)) _sem_Root_Root :: T_StatementList -> T_Root _sem_Root_Root statements_ = (\ _lhsIcat _lhsIflags -> (let _statementsOimCast :: (Maybe TypeExtra) _lhsOannotatedTree :: Root _lhsOoriginalTree :: Root _statementsOcat :: Catalog _statementsOflags :: TypeCheckFlags _statementsIannotatedTree :: StatementList _statementsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag"(line 133, column 8) _statementsOimCast = ({-# LINE 133 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 8883 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Root _statementsIannotatedTree {-# LINE 8889 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Root _statementsIoriginalTree {-# LINE 8895 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 8901 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 8907 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _statementsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 8913 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _statementsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 8919 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _statementsIannotatedTree,_statementsIoriginalTree) = statements_ _statementsOcat _statementsOflags _statementsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- RowConstraint ----------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : RowConstraint originalTree : RowConstraint alternatives: alternative NullConstraint: child ann : Annotation child name : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative NotNullConstraint: child ann : Annotation child name : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative IdentityConstraint: child ann : Annotation child name : {String} child seedAndInc : {(Maybe (Integer,Integer))} visit 0: local annotatedTree : _ local originalTree : _ alternative RowCheckConstraint: child ann : Annotation child name : {String} child expr : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative RowUniqueConstraint: child ann : Annotation child name : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative RowPrimaryKeyConstraint: child ann : Annotation child name : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative RowReferenceConstraint: child ann : Annotation child name : {String} child table : Name child att : {Maybe NameComponent} child onUpdate : {Cascade} child onDelete : {Cascade} visit 0: local annotatedTree : _ local originalTree : _ -} data RowConstraint = NullConstraint (Annotation) (String) | NotNullConstraint (Annotation) (String) | IdentityConstraint (Annotation) (String) (((Maybe (Integer,Integer)))) | RowCheckConstraint (Annotation) (String) (ScalarExpr) | RowUniqueConstraint (Annotation) (String) | RowPrimaryKeyConstraint (Annotation) (String) | RowReferenceConstraint (Annotation) (String) (Name) ((Maybe NameComponent)) (Cascade) (Cascade) deriving ( Data,Eq,Show,Typeable) -- cata _sem_RowConstraint :: RowConstraint -> T_RowConstraint _sem_RowConstraint (NullConstraint _ann _name) = (_sem_RowConstraint_NullConstraint (_sem_Annotation _ann) _name) _sem_RowConstraint (NotNullConstraint _ann _name) = (_sem_RowConstraint_NotNullConstraint (_sem_Annotation _ann) _name) _sem_RowConstraint (IdentityConstraint _ann _name _seedAndInc) = (_sem_RowConstraint_IdentityConstraint (_sem_Annotation _ann) _name _seedAndInc) _sem_RowConstraint (RowCheckConstraint _ann _name _expr) = (_sem_RowConstraint_RowCheckConstraint (_sem_Annotation _ann) _name (_sem_ScalarExpr _expr)) _sem_RowConstraint (RowUniqueConstraint _ann _name) = (_sem_RowConstraint_RowUniqueConstraint (_sem_Annotation _ann) _name) _sem_RowConstraint (RowPrimaryKeyConstraint _ann _name) = (_sem_RowConstraint_RowPrimaryKeyConstraint (_sem_Annotation _ann) _name) _sem_RowConstraint (RowReferenceConstraint _ann _name _table _att _onUpdate _onDelete) = (_sem_RowConstraint_RowReferenceConstraint (_sem_Annotation _ann) _name (_sem_Name _table) _att _onUpdate _onDelete) -- semantic domain type T_RowConstraint = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( RowConstraint,RowConstraint) data Inh_RowConstraint = Inh_RowConstraint {_cat_Inh_RowConstraint :: Catalog,_flags_Inh_RowConstraint :: TypeCheckFlags,_imCast_Inh_RowConstraint :: (Maybe TypeExtra)} data Syn_RowConstraint = Syn_RowConstraint {_annotatedTree_Syn_RowConstraint :: RowConstraint,_originalTree_Syn_RowConstraint :: RowConstraint} _wrap_RowConstraint :: T_RowConstraint -> Inh_RowConstraint -> Syn_RowConstraint _wrap_RowConstraint sem (Inh_RowConstraint _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_RowConstraint _lhsOannotatedTree _lhsOoriginalTree)) _sem_RowConstraint_NullConstraint :: T_Annotation -> String -> T_RowConstraint _sem_RowConstraint_NullConstraint ann_ name_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: RowConstraint _lhsOoriginalTree :: RowConstraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 83, column 36) _annOtpe = ({-# LINE 83 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9041 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NullConstraint _annIannotatedTree name_ {-# LINE 9047 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NullConstraint _annIoriginalTree name_ {-# LINE 9053 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9059 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9065 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9071 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9077 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9083 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_RowConstraint_NotNullConstraint :: T_Annotation -> String -> T_RowConstraint _sem_RowConstraint_NotNullConstraint ann_ name_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: RowConstraint _lhsOoriginalTree :: RowConstraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 82, column 39) _annOtpe = ({-# LINE 82 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9107 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NotNullConstraint _annIannotatedTree name_ {-# LINE 9113 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NotNullConstraint _annIoriginalTree name_ {-# LINE 9119 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9125 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9131 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9137 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9143 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9149 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_RowConstraint_IdentityConstraint :: T_Annotation -> String -> ((Maybe (Integer,Integer))) -> T_RowConstraint _sem_RowConstraint_IdentityConstraint ann_ name_ seedAndInc_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: RowConstraint _lhsOoriginalTree :: RowConstraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 81, column 40) _annOtpe = ({-# LINE 81 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9174 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} IdentityConstraint _annIannotatedTree name_ seedAndInc_ {-# LINE 9180 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} IdentityConstraint _annIoriginalTree name_ seedAndInc_ {-# LINE 9186 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9192 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9198 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9204 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9210 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9216 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_RowConstraint_RowCheckConstraint :: T_Annotation -> String -> T_ScalarExpr -> T_RowConstraint _sem_RowConstraint_RowCheckConstraint ann_ name_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOodbcFunction :: Bool _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: RowConstraint _lhsOoriginalTree :: RowConstraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 84, column 40) _annOtpe = ({-# LINE 84 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9253 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 85, column 40) _exprOdownEnv = ({-# LINE 85 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 9259 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 86, column 40) _exprOexpectedCast = ({-# LINE 86 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 9265 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 87, column 40) _exprOexpectedType = ({-# LINE 87 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 9271 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 149, column 26) _exprOodbcFunction = ({-# LINE 149 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 9277 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 816, column 40) _exprOassignmentCastContext = ({-# LINE 816 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 9283 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowCheckConstraint _annIannotatedTree name_ _exprIannotatedTree {-# LINE 9289 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowCheckConstraint _annIoriginalTree name_ _exprIoriginalTree {-# LINE 9295 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9301 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9307 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9313 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9319 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9325 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9331 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9337 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9343 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_RowConstraint_RowUniqueConstraint :: T_Annotation -> String -> T_RowConstraint _sem_RowConstraint_RowUniqueConstraint ann_ name_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: RowConstraint _lhsOoriginalTree :: RowConstraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 91, column 41) _annOtpe = ({-# LINE 91 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9369 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowUniqueConstraint _annIannotatedTree name_ {-# LINE 9375 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowUniqueConstraint _annIoriginalTree name_ {-# LINE 9381 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9387 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9393 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9399 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9405 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9411 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_RowConstraint_RowPrimaryKeyConstraint :: T_Annotation -> String -> T_RowConstraint _sem_RowConstraint_RowPrimaryKeyConstraint ann_ name_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: RowConstraint _lhsOoriginalTree :: RowConstraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 88, column 45) _annOtpe = ({-# LINE 88 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9435 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowPrimaryKeyConstraint _annIannotatedTree name_ {-# LINE 9441 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowPrimaryKeyConstraint _annIoriginalTree name_ {-# LINE 9447 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9453 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9459 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9465 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9471 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9477 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_RowConstraint_RowReferenceConstraint :: T_Annotation -> String -> T_Name -> (Maybe NameComponent) -> Cascade -> Cascade -> T_RowConstraint _sem_RowConstraint_RowReferenceConstraint ann_ name_ table_ att_ onUpdate_ onDelete_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _tableOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: RowConstraint _lhsOoriginalTree :: RowConstraint _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tableOcat :: Catalog _tableOflags :: TypeCheckFlags _tableOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tableIannotatedTree :: Name _tableIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 89, column 44) _annOtpe = ({-# LINE 89 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9511 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 90, column 44) _tableOtpe = ({-# LINE 90 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 9517 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowReferenceConstraint _annIannotatedTree name_ _tableIannotatedTree att_ onUpdate_ onDelete_ {-# LINE 9523 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} RowReferenceConstraint _annIoriginalTree name_ _tableIoriginalTree att_ onUpdate_ onDelete_ {-# LINE 9529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9541 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9559 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9571 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9577 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tableIannotatedTree,_tableIoriginalTree) = table_ _tableOcat _tableOflags _tableOimCast _tableOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- RowConstraintList ------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : RowConstraintList originalTree : RowConstraintList alternatives: alternative Cons: child hd : RowConstraint child tl : RowConstraintList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type RowConstraintList = [RowConstraint] -- cata _sem_RowConstraintList :: RowConstraintList -> T_RowConstraintList _sem_RowConstraintList list = (Prelude.foldr _sem_RowConstraintList_Cons _sem_RowConstraintList_Nil (Prelude.map _sem_RowConstraint list)) -- semantic domain type T_RowConstraintList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( RowConstraintList,RowConstraintList) data Inh_RowConstraintList = Inh_RowConstraintList {_cat_Inh_RowConstraintList :: Catalog,_flags_Inh_RowConstraintList :: TypeCheckFlags,_imCast_Inh_RowConstraintList :: (Maybe TypeExtra)} data Syn_RowConstraintList = Syn_RowConstraintList {_annotatedTree_Syn_RowConstraintList :: RowConstraintList,_originalTree_Syn_RowConstraintList :: RowConstraintList} _wrap_RowConstraintList :: T_RowConstraintList -> Inh_RowConstraintList -> Syn_RowConstraintList _wrap_RowConstraintList sem (Inh_RowConstraintList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_RowConstraintList _lhsOannotatedTree _lhsOoriginalTree)) _sem_RowConstraintList_Cons :: T_RowConstraint -> T_RowConstraintList -> T_RowConstraintList _sem_RowConstraintList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: RowConstraintList _lhsOoriginalTree :: RowConstraintList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: RowConstraint _hdIoriginalTree :: RowConstraint _tlIannotatedTree :: RowConstraintList _tlIoriginalTree :: RowConstraintList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 9648 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 9654 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9660 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9666 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9672 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9678 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9684 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 9690 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 9696 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 9702 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_RowConstraintList_Nil :: T_RowConstraintList _sem_RowConstraintList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: RowConstraintList _lhsOoriginalTree :: RowConstraintList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 9720 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 9726 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 9732 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 9738 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExpr -------------------------------------------------- {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog downEnv : Environment expectedCast : Bool expectedType : Maybe TypeExtra flags : TypeCheckFlags imCast : Maybe TypeExtra odbcFunction : Bool synthesized attributes: annotatedTree : ScalarExpr colExprs : [(NameComponent,Maybe TypeExtra,ScalarExpr)] originalTree : ScalarExpr upType : Maybe TypeExtra alternatives: alternative NumberLit: child ann : Annotation child d : {String} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local digChars : _ local annotatedTree : _ local originalTree : _ alternative StringLit: child ann : Annotation child value : {String} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative NullLit: child ann : Annotation visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative BooleanLit: child ann : Annotation child b : {Bool} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative TypedStringLit: child ann : Annotation child tn : TypeName child value : {String} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative Interval: child ann : Annotation child value : {String} child field : {IntervalField} child prec : {Maybe Int} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative Identifier: child ann : Annotation child i : Name visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local elkp : _ local tpe : _ local annotatedTree : _ local originalTree : _ alternative Star: child ann : Annotation visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : {Either [TypeError] TypeExtra} local starCS : _ local annotatedTree : _ local originalTree : _ alternative QStar: child ann : Annotation child q : {NameComponent} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : {Either [TypeError] TypeExtra} local starCS : _ local annotatedTree : _ local originalTree : _ alternative PositionalArg: child ann : Annotation child p : {Integer} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative Placeholder: child ann : Annotation visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative PrefixOp: child ann : Annotation child opName : Name child arg : ScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : {Either [TypeError] TypeExtra} local ttpe : {Either [TypeError] ([TypeExtra],TypeExtra)} local annotatedTree : _ local originalTree : _ alternative PostfixOp: child ann : Annotation child opName : Name child arg : ScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : {Either [TypeError] TypeExtra} local ttpe : {Either [TypeError] ([TypeExtra],TypeExtra)} local annotatedTree : _ local originalTree : _ alternative BinaryOp: child ann : Annotation child opName : Name child arg0 : ScalarExpr child arg1 : ScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : {Either [TypeError] TypeExtra} local ttpe : {Either [TypeError] ([TypeExtra],TypeExtra)} local annotatedTree : _ local originalTree : _ alternative SpecialOp: child ann : Annotation child opName : Name child args : ScalarExprList visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : {Either [TypeError] TypeExtra} local ttpe : {Either [TypeError] ([TypeExtra],TypeExtra)} local annotatedTree : _ local originalTree : _ alternative Extract: child ann : Annotation child field : {ExtractField} child e : ScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative App: child ann : Annotation child funName : Name child args : ScalarExprList visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : {Either [TypeError] TypeExtra} local funName : _ local ttpe : {Either [TypeError] ([TypeExtra],TypeExtra)} local annotatedTree : _ local originalTree : _ alternative AggregateApp: child ann : Annotation child aggDistinct : {Distinct} child fn : ScalarExpr child orderBy : ScalarExprDirectionPairList visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative WindowApp: child ann : Annotation child fn : ScalarExpr child partitionBy : ScalarExprList child orderBy : ScalarExprDirectionPairList child frm : {Maybe FrameClause} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative Cast: child ann : Annotation child expr : ScalarExpr child tn : TypeName visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative ImplicitCast: child ann : Annotation child expr : ScalarExpr child te : {TypeExtra} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative Case: child ann : Annotation child cases : CaseScalarExprListScalarExprPairList child els : MaybeScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local whenTypes : _ local thenTypes : _ local tpe : _ local annotatedTree : _ local originalTree : _ alternative CaseSimple: child ann : Annotation child value : ScalarExpr child cases : CaseScalarExprListScalarExprPairList child els : MaybeScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local whenTypes : _ local thenTypes : _ local whent : _ local tpe : _ local annotatedTree : _ local originalTree : _ alternative Parens: child ann : Annotation child ex : ScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative InPredicate: child ann : Annotation child expr : ScalarExpr child i : {Bool} child list : InList visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local rt : {Either [TypeError] TypeExtra} local tpe : _ local annotatedTree : _ local originalTree : _ alternative Exists: child ann : Annotation child sel : QueryExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative ScalarSubQuery: child ann : Annotation child sel : QueryExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative LiftApp: child ann : Annotation child oper : Name child flav : {LiftFlavour} child args : ScalarExprList visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative OdbcLiteral: child ann : Annotation child olt : {OdbcLiteralType} child val : {String} visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative OdbcFunc: child ann : Annotation child ex : ScalarExpr visit 0: local upType : _ local dialectTypeName : {Text -> Either [TypeError] Text} local tpe : _ local annotatedTree : _ local originalTree : _ alternative AntiScalarExpr: child string : {String} visit 0: local tpe : _ local annotatedTree : _ local originalTree : _ -} data ScalarExpr = NumberLit (Annotation) (String) | StringLit (Annotation) (String) | NullLit (Annotation) | BooleanLit (Annotation) (Bool) | TypedStringLit (Annotation) (TypeName) (String) | Interval (Annotation) (String) (IntervalField) ((Maybe Int)) | Identifier (Annotation) (Name) | Star (Annotation) | QStar (Annotation) (NameComponent) | PositionalArg (Annotation) (Integer) | Placeholder (Annotation) | PrefixOp (Annotation) (Name) (ScalarExpr) | PostfixOp (Annotation) (Name) (ScalarExpr) | BinaryOp (Annotation) (Name) (ScalarExpr) (ScalarExpr) | SpecialOp (Annotation) (Name) (ScalarExprList) | Extract (Annotation) (ExtractField) (ScalarExpr) | App (Annotation) (Name) (ScalarExprList) | AggregateApp (Annotation) (Distinct) (ScalarExpr) (ScalarExprDirectionPairList) | WindowApp (Annotation) (ScalarExpr) (ScalarExprList) (ScalarExprDirectionPairList) ((Maybe FrameClause)) | Cast (Annotation) (ScalarExpr) (TypeName) | ImplicitCast (Annotation) (ScalarExpr) (TypeExtra) | Case (Annotation) (CaseScalarExprListScalarExprPairList) (MaybeScalarExpr) | CaseSimple (Annotation) (ScalarExpr) (CaseScalarExprListScalarExprPairList) (MaybeScalarExpr) | Parens (Annotation) (ScalarExpr) | InPredicate (Annotation) (ScalarExpr) (Bool) (InList) | Exists (Annotation) (QueryExpr) | ScalarSubQuery (Annotation) (QueryExpr) | LiftApp (Annotation) (Name) (LiftFlavour) (ScalarExprList) | OdbcLiteral (Annotation) (OdbcLiteralType) (String) | OdbcFunc (Annotation) (ScalarExpr) | AntiScalarExpr (String) deriving ( Data,Eq,Show,Typeable) -- cata _sem_ScalarExpr :: ScalarExpr -> T_ScalarExpr _sem_ScalarExpr (NumberLit _ann _d) = (_sem_ScalarExpr_NumberLit (_sem_Annotation _ann) _d) _sem_ScalarExpr (StringLit _ann _value) = (_sem_ScalarExpr_StringLit (_sem_Annotation _ann) _value) _sem_ScalarExpr (NullLit _ann) = (_sem_ScalarExpr_NullLit (_sem_Annotation _ann)) _sem_ScalarExpr (BooleanLit _ann _b) = (_sem_ScalarExpr_BooleanLit (_sem_Annotation _ann) _b) _sem_ScalarExpr (TypedStringLit _ann _tn _value) = (_sem_ScalarExpr_TypedStringLit (_sem_Annotation _ann) (_sem_TypeName _tn) _value) _sem_ScalarExpr (Interval _ann _value _field _prec) = (_sem_ScalarExpr_Interval (_sem_Annotation _ann) _value _field _prec) _sem_ScalarExpr (Identifier _ann _i) = (_sem_ScalarExpr_Identifier (_sem_Annotation _ann) (_sem_Name _i)) _sem_ScalarExpr (Star _ann) = (_sem_ScalarExpr_Star (_sem_Annotation _ann)) _sem_ScalarExpr (QStar _ann _q) = (_sem_ScalarExpr_QStar (_sem_Annotation _ann) _q) _sem_ScalarExpr (PositionalArg _ann _p) = (_sem_ScalarExpr_PositionalArg (_sem_Annotation _ann) _p) _sem_ScalarExpr (Placeholder _ann) = (_sem_ScalarExpr_Placeholder (_sem_Annotation _ann)) _sem_ScalarExpr (PrefixOp _ann _opName _arg) = (_sem_ScalarExpr_PrefixOp (_sem_Annotation _ann) (_sem_Name _opName) (_sem_ScalarExpr _arg)) _sem_ScalarExpr (PostfixOp _ann _opName _arg) = (_sem_ScalarExpr_PostfixOp (_sem_Annotation _ann) (_sem_Name _opName) (_sem_ScalarExpr _arg)) _sem_ScalarExpr (BinaryOp _ann _opName _arg0 _arg1) = (_sem_ScalarExpr_BinaryOp (_sem_Annotation _ann) (_sem_Name _opName) (_sem_ScalarExpr _arg0) (_sem_ScalarExpr _arg1)) _sem_ScalarExpr (SpecialOp _ann _opName _args) = (_sem_ScalarExpr_SpecialOp (_sem_Annotation _ann) (_sem_Name _opName) (_sem_ScalarExprList _args)) _sem_ScalarExpr (Extract _ann _field _e) = (_sem_ScalarExpr_Extract (_sem_Annotation _ann) _field (_sem_ScalarExpr _e)) _sem_ScalarExpr (App _ann _funName _args) = (_sem_ScalarExpr_App (_sem_Annotation _ann) (_sem_Name _funName) (_sem_ScalarExprList _args)) _sem_ScalarExpr (AggregateApp _ann _aggDistinct _fn _orderBy) = (_sem_ScalarExpr_AggregateApp (_sem_Annotation _ann) _aggDistinct (_sem_ScalarExpr _fn) (_sem_ScalarExprDirectionPairList _orderBy)) _sem_ScalarExpr (WindowApp _ann _fn _partitionBy _orderBy _frm) = (_sem_ScalarExpr_WindowApp (_sem_Annotation _ann) (_sem_ScalarExpr _fn) (_sem_ScalarExprList _partitionBy) (_sem_ScalarExprDirectionPairList _orderBy) _frm) _sem_ScalarExpr (Cast _ann _expr _tn) = (_sem_ScalarExpr_Cast (_sem_Annotation _ann) (_sem_ScalarExpr _expr) (_sem_TypeName _tn)) _sem_ScalarExpr (ImplicitCast _ann _expr _te) = (_sem_ScalarExpr_ImplicitCast (_sem_Annotation _ann) (_sem_ScalarExpr _expr) _te) _sem_ScalarExpr (Case _ann _cases _els) = (_sem_ScalarExpr_Case (_sem_Annotation _ann) (_sem_CaseScalarExprListScalarExprPairList _cases) (_sem_MaybeScalarExpr _els)) _sem_ScalarExpr (CaseSimple _ann _value _cases _els) = (_sem_ScalarExpr_CaseSimple (_sem_Annotation _ann) (_sem_ScalarExpr _value) (_sem_CaseScalarExprListScalarExprPairList _cases) (_sem_MaybeScalarExpr _els)) _sem_ScalarExpr (Parens _ann _ex) = (_sem_ScalarExpr_Parens (_sem_Annotation _ann) (_sem_ScalarExpr _ex)) _sem_ScalarExpr (InPredicate _ann _expr _i _list) = (_sem_ScalarExpr_InPredicate (_sem_Annotation _ann) (_sem_ScalarExpr _expr) _i (_sem_InList _list)) _sem_ScalarExpr (Exists _ann _sel) = (_sem_ScalarExpr_Exists (_sem_Annotation _ann) (_sem_QueryExpr _sel)) _sem_ScalarExpr (ScalarSubQuery _ann _sel) = (_sem_ScalarExpr_ScalarSubQuery (_sem_Annotation _ann) (_sem_QueryExpr _sel)) _sem_ScalarExpr (LiftApp _ann _oper _flav _args) = (_sem_ScalarExpr_LiftApp (_sem_Annotation _ann) (_sem_Name _oper) _flav (_sem_ScalarExprList _args)) _sem_ScalarExpr (OdbcLiteral _ann _olt _val) = (_sem_ScalarExpr_OdbcLiteral (_sem_Annotation _ann) _olt _val) _sem_ScalarExpr (OdbcFunc _ann _ex) = (_sem_ScalarExpr_OdbcFunc (_sem_Annotation _ann) (_sem_ScalarExpr _ex)) _sem_ScalarExpr (AntiScalarExpr _string) = (_sem_ScalarExpr_AntiScalarExpr _string) -- semantic domain type T_ScalarExpr = Bool -> Catalog -> Environment -> Bool -> (Maybe TypeExtra) -> TypeCheckFlags -> (Maybe TypeExtra) -> Bool -> ( ScalarExpr,([(NameComponent,Maybe TypeExtra,ScalarExpr)]),ScalarExpr,(Maybe TypeExtra)) data Inh_ScalarExpr = Inh_ScalarExpr {_assignmentCastContext_Inh_ScalarExpr :: Bool,_cat_Inh_ScalarExpr :: Catalog,_downEnv_Inh_ScalarExpr :: Environment,_expectedCast_Inh_ScalarExpr :: Bool,_expectedType_Inh_ScalarExpr :: (Maybe TypeExtra),_flags_Inh_ScalarExpr :: TypeCheckFlags,_imCast_Inh_ScalarExpr :: (Maybe TypeExtra),_odbcFunction_Inh_ScalarExpr :: Bool} data Syn_ScalarExpr = Syn_ScalarExpr {_annotatedTree_Syn_ScalarExpr :: ScalarExpr,_colExprs_Syn_ScalarExpr :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]),_originalTree_Syn_ScalarExpr :: ScalarExpr,_upType_Syn_ScalarExpr :: (Maybe TypeExtra)} _wrap_ScalarExpr :: T_ScalarExpr -> Inh_ScalarExpr -> Syn_ScalarExpr _wrap_ScalarExpr sem (Inh_ScalarExpr _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction) = (let ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType) = sem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction in (Syn_ScalarExpr _lhsOannotatedTree _lhsOcolExprs _lhsOoriginalTree _lhsOupType)) _sem_ScalarExpr_NumberLit :: T_Annotation -> String -> T_ScalarExpr _sem_ScalarExpr_NumberLit ann_ d_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 10231 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 10237 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 10243 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 10249 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 10260 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 10266 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 249, column 9) _tpe = ({-# LINE 249 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} if all (`elem` _digChars ) d_ then (mkTypeExtraNN . ScalarType) <$> classifyInteger (tcfDialect _lhsIflags) d_ else (mkTypeExtraNN . ScalarType) <$> (_dialectTypeName "numeric") {-# LINE 10274 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 253, column 9) _digChars = ({-# LINE 253 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} concatMap show [(0::Int)..9] {-# LINE 10280 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NumberLit _annIannotatedTree d_ {-# LINE 10286 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NumberLit _annIoriginalTree d_ {-# LINE 10292 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 10298 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 10304 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 10310 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 10316 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_StringLit :: T_Annotation -> String -> T_ScalarExpr _sem_ScalarExpr_StringLit ann_ value_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 10363 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 10369 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 10375 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 10381 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 10392 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 10398 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 257, column 9) _tpe = ({-# LINE 257 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Right $ (mkTypeExtraNN UnknownType) {tePrecision = Just $ length value_} {-# LINE 10404 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} StringLit _annIannotatedTree value_ {-# LINE 10410 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} StringLit _annIoriginalTree value_ {-# LINE 10416 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 10422 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 10428 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 10434 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 10440 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_NullLit :: T_Annotation -> T_ScalarExpr _sem_ScalarExpr_NullLit ann_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 10486 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 10492 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 10498 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 10504 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 10515 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 10521 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 260, column 10) _tpe = ({-# LINE 260 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Right $ mkTypeExtra UnknownType {-# LINE 10527 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NullLit _annIannotatedTree {-# LINE 10533 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NullLit _annIoriginalTree {-# LINE 10539 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 10545 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 10551 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 10557 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 10563 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_BooleanLit :: T_Annotation -> Bool -> T_ScalarExpr _sem_ScalarExpr_BooleanLit ann_ b_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 10610 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 10616 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 10622 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 10628 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 10639 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 10645 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 240, column 9) _tpe = ({-# LINE 240 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} fmap (mkTypeExtraNN . ScalarType) $ _dialectTypeName "boolean" {-# LINE 10651 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} BooleanLit _annIannotatedTree b_ {-# LINE 10657 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} BooleanLit _annIoriginalTree b_ {-# LINE 10663 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 10669 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 10675 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 10681 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 10687 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_TypedStringLit :: T_Annotation -> T_TypeName -> String -> T_ScalarExpr _sem_ScalarExpr_TypedStringLit ann_ tn_ value_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _tnOcat :: Catalog _tnOflags :: TypeCheckFlags _tnOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tnIannotatedTree :: TypeName _tnInamedType :: (Maybe TypeExtra) _tnIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 10741 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 10747 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 10753 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 10759 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 10770 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 10776 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 270, column 10) _tpe = ({-# LINE 270 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right _tnInamedType {-# LINE 10782 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TypedStringLit _annIannotatedTree _tnIannotatedTree value_ {-# LINE 10788 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TypedStringLit _annIoriginalTree _tnIoriginalTree value_ {-# LINE 10794 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 10800 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 10806 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 10812 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 10818 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 10824 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 10830 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 10836 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tnIannotatedTree,_tnInamedType,_tnIoriginalTree) = tn_ _tnOcat _tnOflags _tnOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Interval :: T_Annotation -> String -> IntervalField -> (Maybe Int) -> T_ScalarExpr _sem_ScalarExpr_Interval ann_ value_ field_ prec_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 10887 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 10893 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 10899 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 10905 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 10916 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 10922 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 282, column 9) _tpe = ({-# LINE 282 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Right $ mkTypeExtraNN $ ScalarType "interval" {-# LINE 10928 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Interval _annIannotatedTree value_ field_ prec_ {-# LINE 10934 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Interval _annIoriginalTree value_ field_ prec_ {-# LINE 10940 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 10946 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 10952 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 10958 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 10964 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Identifier :: T_Annotation -> T_Name -> T_ScalarExpr _sem_ScalarExpr_Identifier ann_ i_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _iOtpe :: (Either [TypeError] TypeExtra) _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _iOcat :: Catalog _iOflags :: TypeCheckFlags _iOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _iIannotatedTree :: Name _iIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 11017 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 11023 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 11029 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 11035 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 11046 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 11052 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 325, column 10) _elkp = ({-# LINE 325 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} E.envLookupIdentifier (nameComponents _iIoriginalTree) _lhsIdownEnv {-# LINE 11058 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 326, column 10) _tpe = ({-# LINE 326 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} fmap snd _elkp {-# LINE 11064 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 328, column 10) _lhsOannotatedTree = ({-# LINE 328 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _annotatedTree {-# LINE 11070 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 329, column 10) _annotatedTree = ({-# LINE 329 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} let t = Identifier _annIannotatedTree _iIannotatedTree in fromMaybe t $ do case tcfAddQualifiers _lhsIflags of False -> Nothing True -> do ((q,i),_) <- either (const Nothing) Just _elkp if q /= "" then return $ Identifier _annIannotatedTree (Name emptyAnnotation [Nmc $ T.unpack q, Nmc $ T.unpack i]) else return t {-# LINE 11086 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 349, column 10) _iOtpe = ({-# LINE 349 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 11092 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Identifier _annIoriginalTree _iIoriginalTree {-# LINE 11098 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 11104 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11110 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11116 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _iOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11122 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _iOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11128 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _iOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 11134 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _iIannotatedTree,_iIoriginalTree) = i_ _iOcat _iOflags _iOimCast _iOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Star :: T_Annotation -> T_ScalarExpr _sem_ScalarExpr_Star ann_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _tpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 11183 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 11189 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 11195 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 11201 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 11212 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 11218 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 713, column 9) _tpe = ({-# LINE 713 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _originalTree of Star _ -> E.envExpandStar Nothing _lhsIdownEnv >>= _starCS QStar _ q -> do E.envExpandStar (Just q) _lhsIdownEnv >>= _starCS _ -> Left [InternalError "wrong ctor in sem rule for star, qstar in scalarexprs.ag"] {-# LINE 11231 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 722, column 9) _starCS = ({-# LINE 722 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Right . mkTypeExtraNN . CompositeType . map (\((_q,n),t) -> (n,t)) {-# LINE 11237 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Star _annIannotatedTree {-# LINE 11243 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Star _annIoriginalTree {-# LINE 11249 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 11255 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 11261 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11267 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11273 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_QStar :: T_Annotation -> NameComponent -> T_ScalarExpr _sem_ScalarExpr_QStar ann_ q_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _tpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 11321 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 11327 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 11333 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 11339 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 11350 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 11356 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 713, column 9) _tpe = ({-# LINE 713 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _originalTree of Star _ -> E.envExpandStar Nothing _lhsIdownEnv >>= _starCS QStar _ q -> do E.envExpandStar (Just q) _lhsIdownEnv >>= _starCS _ -> Left [InternalError "wrong ctor in sem rule for star, qstar in scalarexprs.ag"] {-# LINE 11369 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 722, column 9) _starCS = ({-# LINE 722 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Right . mkTypeExtraNN . CompositeType . map (\((_q,n),t) -> (n,t)) {-# LINE 11375 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} QStar _annIannotatedTree q_ {-# LINE 11381 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} QStar _annIoriginalTree q_ {-# LINE 11387 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 11393 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 11399 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11405 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11411 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_PositionalArg :: T_Annotation -> Integer -> T_ScalarExpr _sem_ScalarExpr_PositionalArg ann_ p_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 11458 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 11464 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 11470 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 11476 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 11487 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 11493 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 734, column 9) _tpe = ({-# LINE 734 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 11499 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PositionalArg _annIannotatedTree p_ {-# LINE 11505 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PositionalArg _annIoriginalTree p_ {-# LINE 11511 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 11517 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 11523 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Placeholder :: T_Annotation -> T_ScalarExpr _sem_ScalarExpr_Placeholder ann_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 11581 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 11587 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 11593 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 11599 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 11610 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 11616 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 300, column 10) _tpe = ({-# LINE 300 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Right $ mkTypeExtraNN UnknownType {-# LINE 11622 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Placeholder _annIannotatedTree {-# LINE 11628 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Placeholder _annIoriginalTree {-# LINE 11634 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 11640 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 11646 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11652 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11658 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_PrefixOp :: T_Annotation -> T_Name -> T_ScalarExpr -> T_ScalarExpr _sem_ScalarExpr_PrefixOp ann_ opName_ arg_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _argOodbcFunction :: Bool _opNameOtpe :: (Either [TypeError] TypeExtra) _tpe :: (Either [TypeError] TypeExtra) _ttpe :: (Either [TypeError] ([TypeExtra],TypeExtra)) _argOexpectedType :: (Maybe TypeExtra) _argOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _opNameOcat :: Catalog _opNameOflags :: TypeCheckFlags _opNameOimCast :: (Maybe TypeExtra) _argOassignmentCastContext :: Bool _argOcat :: Catalog _argOdownEnv :: Environment _argOflags :: TypeCheckFlags _argOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _opNameIannotatedTree :: Name _opNameIoriginalTree :: Name _argIannotatedTree :: ScalarExpr _argIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _argIoriginalTree :: ScalarExpr _argIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 11726 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 11732 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 11738 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 11744 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 11755 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 11761 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 175, column 26) _argOodbcFunction = ({-# LINE 175 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 11767 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 210, column 9) _opNameOtpe = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 11773 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 364, column 10) _tpe = ({-# LINE 364 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} fmap snd _ttpe {-# LINE 11779 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 433, column 10) _ttpe = ({-# LINE 433 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents _opNameIoriginalTree) (getMaybeIntsFromLiterals [_argIoriginalTree]) [_argIupType] {-# LINE 11785 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 434, column 10) _argOexpectedType = ({-# LINE 434 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _ttpe of Right ([t],_) -> Just t _ -> Nothing {-# LINE 11793 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 456, column 9) _argOexpectedCast = ({-# LINE 456 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 11799 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PrefixOp _annIannotatedTree _opNameIannotatedTree _argIannotatedTree {-# LINE 11805 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PrefixOp _annIoriginalTree _opNameIoriginalTree _argIoriginalTree {-# LINE 11811 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 11817 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 11823 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11829 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11835 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11841 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11847 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 11853 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 11859 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 11865 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 11871 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 11877 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 11883 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _opNameIannotatedTree,_opNameIoriginalTree) = opName_ _opNameOcat _opNameOflags _opNameOimCast _opNameOtpe ( _argIannotatedTree,_argIcolExprs,_argIoriginalTree,_argIupType) = arg_ _argOassignmentCastContext _argOcat _argOdownEnv _argOexpectedCast _argOexpectedType _argOflags _argOimCast _argOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_PostfixOp :: T_Annotation -> T_Name -> T_ScalarExpr -> T_ScalarExpr _sem_ScalarExpr_PostfixOp ann_ opName_ arg_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _argOodbcFunction :: Bool _opNameOtpe :: (Either [TypeError] TypeExtra) _tpe :: (Either [TypeError] TypeExtra) _ttpe :: (Either [TypeError] ([TypeExtra],TypeExtra)) _argOexpectedType :: (Maybe TypeExtra) _argOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _opNameOcat :: Catalog _opNameOflags :: TypeCheckFlags _opNameOimCast :: (Maybe TypeExtra) _argOassignmentCastContext :: Bool _argOcat :: Catalog _argOdownEnv :: Environment _argOflags :: TypeCheckFlags _argOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _opNameIannotatedTree :: Name _opNameIoriginalTree :: Name _argIannotatedTree :: ScalarExpr _argIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _argIoriginalTree :: ScalarExpr _argIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 11955 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 11961 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 11967 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 11973 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 11984 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 11990 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 175, column 26) _argOodbcFunction = ({-# LINE 175 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 11996 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 210, column 9) _opNameOtpe = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 12002 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 364, column 10) _tpe = ({-# LINE 364 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} fmap snd _ttpe {-# LINE 12008 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 433, column 10) _ttpe = ({-# LINE 433 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents _opNameIoriginalTree) (getMaybeIntsFromLiterals [_argIoriginalTree]) [_argIupType] {-# LINE 12014 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 434, column 10) _argOexpectedType = ({-# LINE 434 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _ttpe of Right ([t],_) -> Just t _ -> Nothing {-# LINE 12022 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 456, column 9) _argOexpectedCast = ({-# LINE 456 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12028 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PostfixOp _annIannotatedTree _opNameIannotatedTree _argIannotatedTree {-# LINE 12034 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PostfixOp _annIoriginalTree _opNameIoriginalTree _argIoriginalTree {-# LINE 12040 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 12046 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 12052 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12058 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12064 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12070 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12076 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12082 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 12088 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12094 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 12100 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12106 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12112 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _opNameIannotatedTree,_opNameIoriginalTree) = opName_ _opNameOcat _opNameOflags _opNameOimCast _opNameOtpe ( _argIannotatedTree,_argIcolExprs,_argIoriginalTree,_argIupType) = arg_ _argOassignmentCastContext _argOcat _argOdownEnv _argOexpectedCast _argOexpectedType _argOflags _argOimCast _argOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_BinaryOp :: T_Annotation -> T_Name -> T_ScalarExpr -> T_ScalarExpr -> T_ScalarExpr _sem_ScalarExpr_BinaryOp ann_ opName_ arg0_ arg1_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _arg0OodbcFunction :: Bool _arg1OodbcFunction :: Bool _opNameOtpe :: (Either [TypeError] TypeExtra) _tpe :: (Either [TypeError] TypeExtra) _ttpe :: (Either [TypeError] ([TypeExtra],TypeExtra)) _arg0OexpectedType :: (Maybe TypeExtra) _arg1OexpectedType :: (Maybe TypeExtra) _arg0OexpectedCast :: Bool _arg1OexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _opNameOcat :: Catalog _opNameOflags :: TypeCheckFlags _opNameOimCast :: (Maybe TypeExtra) _arg0OassignmentCastContext :: Bool _arg0Ocat :: Catalog _arg0OdownEnv :: Environment _arg0Oflags :: TypeCheckFlags _arg0OimCast :: (Maybe TypeExtra) _arg1OassignmentCastContext :: Bool _arg1Ocat :: Catalog _arg1OdownEnv :: Environment _arg1Oflags :: TypeCheckFlags _arg1OimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _opNameIannotatedTree :: Name _opNameIoriginalTree :: Name _arg0IannotatedTree :: ScalarExpr _arg0IcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _arg0IoriginalTree :: ScalarExpr _arg0IupType :: (Maybe TypeExtra) _arg1IannotatedTree :: ScalarExpr _arg1IcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _arg1IoriginalTree :: ScalarExpr _arg1IupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 12197 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 12203 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 12209 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 12215 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 12226 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 12232 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 176, column 16) _arg0OodbcFunction = ({-# LINE 176 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12238 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 177, column 16) _arg1OodbcFunction = ({-# LINE 177 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12244 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 210, column 9) _opNameOtpe = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 12250 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 364, column 10) _tpe = ({-# LINE 364 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} fmap snd _ttpe {-# LINE 12256 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 425, column 10) _ttpe = ({-# LINE 425 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents _opNameIoriginalTree) (getMaybeIntsFromLiterals [_arg0IoriginalTree,_arg1IoriginalTree]) [_arg0IupType,_arg1IupType] {-# LINE 12264 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 428, column 10) (_arg0OexpectedType,_arg1OexpectedType) = ({-# LINE 428 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _ttpe of Right ([t0,t1],_) -> (Just t0,Just t1) _ -> (Nothing,Nothing) {-# LINE 12272 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 458, column 9) _arg0OexpectedCast = ({-# LINE 458 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12278 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 459, column 9) _arg1OexpectedCast = ({-# LINE 459 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12284 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} BinaryOp _annIannotatedTree _opNameIannotatedTree _arg0IannotatedTree _arg1IannotatedTree {-# LINE 12290 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} BinaryOp _annIoriginalTree _opNameIoriginalTree _arg0IoriginalTree _arg1IoriginalTree {-# LINE 12296 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 12302 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 12308 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12314 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12320 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12326 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12332 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12338 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg0OassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 12344 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg0Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12350 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg0OdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 12356 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg0Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12362 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg0OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12368 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg1OassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 12374 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12380 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg1OdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 12386 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12392 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _arg1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12398 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _opNameIannotatedTree,_opNameIoriginalTree) = opName_ _opNameOcat _opNameOflags _opNameOimCast _opNameOtpe ( _arg0IannotatedTree,_arg0IcolExprs,_arg0IoriginalTree,_arg0IupType) = arg0_ _arg0OassignmentCastContext _arg0Ocat _arg0OdownEnv _arg0OexpectedCast _arg0OexpectedType _arg0Oflags _arg0OimCast _arg0OodbcFunction ( _arg1IannotatedTree,_arg1IcolExprs,_arg1IoriginalTree,_arg1IupType) = arg1_ _arg1OassignmentCastContext _arg1Ocat _arg1OdownEnv _arg1OexpectedCast _arg1OexpectedType _arg1Oflags _arg1OimCast _arg1OodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_SpecialOp :: T_Annotation -> T_Name -> T_ScalarExprList -> T_ScalarExpr _sem_ScalarExpr_SpecialOp ann_ opName_ args_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _opNameOtpe :: (Either [TypeError] TypeExtra) _tpe :: (Either [TypeError] TypeExtra) _ttpe :: (Either [TypeError] ([TypeExtra],TypeExtra)) _argsOexpectedTypes :: ([TypeExtra]) _argsOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _opNameOcat :: Catalog _opNameOflags :: TypeCheckFlags _opNameOimCast :: (Maybe TypeExtra) _argsOassignmentCastContext :: Bool _argsOcat :: Catalog _argsOdownEnv :: Environment _argsOflags :: TypeCheckFlags _argsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _opNameIannotatedTree :: Name _opNameIoriginalTree :: Name _argsIannotatedTree :: ScalarExprList _argsIoriginalTree :: ScalarExprList _argsIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 12470 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 12476 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 12482 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 12488 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 12499 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 12505 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 210, column 9) _opNameOtpe = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 12511 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 364, column 10) _tpe = ({-# LINE 364 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} fmap snd _ttpe {-# LINE 12517 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 439, column 10) _ttpe = ({-# LINE 439 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents _opNameIoriginalTree) (getMaybeIntsFromLiterals _argsIoriginalTree) _argsIupTypes {-# LINE 12523 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 440, column 10) _argsOexpectedTypes = ({-# LINE 440 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const []) id $ fmap fst _ttpe {-# LINE 12529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 454, column 9) _argsOexpectedCast = ({-# LINE 454 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SpecialOp _annIannotatedTree _opNameIannotatedTree _argsIannotatedTree {-# LINE 12541 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SpecialOp _annIoriginalTree _opNameIoriginalTree _argsIoriginalTree {-# LINE 12547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 12553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 12559 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12571 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12577 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12583 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _opNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12589 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 12595 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12601 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 12607 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12613 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12619 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _opNameIannotatedTree,_opNameIoriginalTree) = opName_ _opNameOcat _opNameOflags _opNameOimCast _opNameOtpe ( _argsIannotatedTree,_argsIoriginalTree,_argsIupTypes) = args_ _argsOassignmentCastContext _argsOcat _argsOdownEnv _argsOexpectedCast _argsOexpectedTypes _argsOflags _argsOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Extract :: T_Annotation -> ExtractField -> T_ScalarExpr -> T_ScalarExpr _sem_ScalarExpr_Extract ann_ field_ e_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _eOodbcFunction :: Bool _eOexpectedType :: (Maybe TypeExtra) _eOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _eOassignmentCastContext :: Bool _eOcat :: Catalog _eOdownEnv :: Environment _eOflags :: TypeCheckFlags _eOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _eIannotatedTree :: ScalarExpr _eIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _eIoriginalTree :: ScalarExpr _eIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 12683 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 12689 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 12695 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 12701 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 12712 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 12718 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 171, column 15) _eOodbcFunction = ({-# LINE 171 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12724 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 284, column 9) _tpe = ({-# LINE 284 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do x <- maybe (Left []) Right _eIupType if (teType x) `elem` (map ScalarType $ diDatetimeTypes $ tcfDialect _lhsIflags) then do i <- ScalarType <$> _dialectTypeName "int" return $ TypeExtra i Nothing Nothing $ teNullable x else Left [NoMatchingOperator "extract" [teType x]] {-# LINE 12736 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 292, column 9) _eOexpectedType = ({-# LINE 292 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do x <- _eIupType either (const Nothing) (Just . TypeExtra (teType x) Nothing Nothing . teNullable) _tpe {-# LINE 12746 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 298, column 9) _eOexpectedCast = ({-# LINE 298 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12752 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Extract _annIannotatedTree field_ _eIannotatedTree {-# LINE 12758 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Extract _annIoriginalTree field_ _eIoriginalTree {-# LINE 12764 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 12770 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 12776 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12782 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12788 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _eOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 12794 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _eOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 12800 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _eOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 12806 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _eOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 12812 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _eOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 12818 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _eIannotatedTree,_eIcolExprs,_eIoriginalTree,_eIupType) = e_ _eOassignmentCastContext _eOcat _eOdownEnv _eOexpectedCast _eOexpectedType _eOflags _eOimCast _eOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_App :: T_Annotation -> T_Name -> T_ScalarExprList -> T_ScalarExpr _sem_ScalarExpr_App ann_ funName_ args_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _funNameOtpe :: (Either [TypeError] TypeExtra) _tpe :: (Either [TypeError] TypeExtra) _argsOexpectedTypes :: ([TypeExtra]) _ttpe :: (Either [TypeError] ([TypeExtra],TypeExtra)) _argsOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _funNameOcat :: Catalog _funNameOflags :: TypeCheckFlags _funNameOimCast :: (Maybe TypeExtra) _argsOassignmentCastContext :: Bool _argsOcat :: Catalog _argsOdownEnv :: Environment _argsOflags :: TypeCheckFlags _argsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _funNameIannotatedTree :: Name _funNameIoriginalTree :: Name _argsIannotatedTree :: ScalarExprList _argsIoriginalTree :: ScalarExprList _argsIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 12886 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 12892 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 12898 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 12904 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 12915 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 12921 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 208, column 9) _funNameOtpe = ({-# LINE 208 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 12927 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 364, column 10) _tpe = ({-# LINE 364 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} fmap snd _ttpe {-# LINE 12933 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 366, column 10) _argsOexpectedTypes = ({-# LINE 366 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const []) id $ fmap fst _ttpe {-# LINE 12939 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 380, column 10) _funName = ({-# LINE 380 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} let y = if _lhsIodbcFunction then let f [] = [] f [Nmc x] = [Nmc $ "!odbc-" ++ x] f [QNmc x] = [QNmc $ "!odbc-" ++ x] f [x] = [x] f (x:xs) = x:f xs in (\(Name a nms) -> Name a (f nms)) _funNameIoriginalTree else _funNameIoriginalTree in y {-# LINE 12953 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 403, column 10) _ttpe = ({-# LINE 403 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _originalTree of (App _ (Name _ [Nmc "count"]) [Star _]) -> tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents _funName ) (getMaybeIntsFromLiterals _argsIoriginalTree) [Just $ mkTypeExtraNN UnknownType] (App _ (Name _ [Nmc n]) [_,Identifier _ (Name _ [Nmc tyi])]) | _lhsIodbcFunction && map toLower n == "convert" -> do (ts,_r) <- do t <- _dialectTypeName "int" tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents _funName ) (getMaybeIntsFromLiterals _argsIoriginalTree) [Just $ mkTypeExtraNN UnknownType, Just $ mkTypeExtraNN $ ScalarType t] r' <- maybe (Left [UnrecognisedIdentifier $ T.pack tyi]) (Right . mkTypeExtra) $ lookup (map toLower tyi) odbcConvertTypes Right (ts, r') _ -> tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents _funName ) (getMaybeIntsFromLiterals _argsIoriginalTree) _argsIupTypes {-# LINE 12976 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 454, column 9) _argsOexpectedCast = ({-# LINE 454 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 12982 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} App _annIannotatedTree _funNameIannotatedTree _argsIannotatedTree {-# LINE 12988 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} App _annIoriginalTree _funNameIoriginalTree _argsIoriginalTree {-# LINE 12994 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 13000 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 13006 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13012 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13018 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _funNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13024 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _funNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13030 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _funNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13036 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 13042 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13048 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 13054 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13060 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13066 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _funNameIannotatedTree,_funNameIoriginalTree) = funName_ _funNameOcat _funNameOflags _funNameOimCast _funNameOtpe ( _argsIannotatedTree,_argsIoriginalTree,_argsIupTypes) = args_ _argsOassignmentCastContext _argsOcat _argsOdownEnv _argsOexpectedCast _argsOexpectedTypes _argsOflags _argsOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_AggregateApp :: T_Annotation -> Distinct -> T_ScalarExpr -> T_ScalarExprDirectionPairList -> T_ScalarExpr _sem_ScalarExpr_AggregateApp ann_ aggDistinct_ fn_ orderBy_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _fnOodbcFunction :: Bool _fnOexpectedCast :: Bool _fnOexpectedType :: (Maybe TypeExtra) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _fnOassignmentCastContext :: Bool _fnOcat :: Catalog _fnOdownEnv :: Environment _fnOflags :: TypeCheckFlags _fnOimCast :: (Maybe TypeExtra) _orderByOcat :: Catalog _orderByOdownEnv :: Environment _orderByOflags :: TypeCheckFlags _orderByOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _fnIannotatedTree :: ScalarExpr _fnIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _fnIoriginalTree :: ScalarExpr _fnIupType :: (Maybe TypeExtra) _orderByIannotatedTree :: ScalarExprDirectionPairList _orderByIoriginalTree :: ScalarExprDirectionPairList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 13137 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 13143 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 13149 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 13155 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 13166 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 13172 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 178, column 20) _fnOodbcFunction = ({-# LINE 178 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13178 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 442, column 10) _tpe = ({-# LINE 442 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _fnIoriginalTree of (App _ fnm@(Name _ [Nmc "count"]) [Star _]) -> fmap snd $ tcAppLike (tcfDialect _lhsIflags) _lhsIcat (nameComponents fnm) [] [Just $ mkTypeExtraNN UnknownType] _ -> maybe (Left []) Right _fnIupType {-# LINE 13187 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 461, column 9) _fnOexpectedCast = ({-# LINE 461 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13193 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 752, column 28) _fnOexpectedType = ({-# LINE 752 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 13199 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AggregateApp _annIannotatedTree aggDistinct_ _fnIannotatedTree _orderByIannotatedTree {-# LINE 13205 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AggregateApp _annIoriginalTree aggDistinct_ _fnIoriginalTree _orderByIoriginalTree {-# LINE 13211 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 13217 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 13223 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13229 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13235 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 13241 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13247 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 13253 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13259 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13265 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13271 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOdownEnv = ({-# LINE 215 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIdownEnv {-# LINE 13277 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13283 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13289 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _fnIannotatedTree,_fnIcolExprs,_fnIoriginalTree,_fnIupType) = fn_ _fnOassignmentCastContext _fnOcat _fnOdownEnv _fnOexpectedCast _fnOexpectedType _fnOflags _fnOimCast _fnOodbcFunction ( _orderByIannotatedTree,_orderByIoriginalTree) = orderBy_ _orderByOcat _orderByOdownEnv _orderByOflags _orderByOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_WindowApp :: T_Annotation -> T_ScalarExpr -> T_ScalarExprList -> T_ScalarExprDirectionPairList -> (Maybe FrameClause) -> T_ScalarExpr _sem_ScalarExpr_WindowApp ann_ fn_ partitionBy_ orderBy_ frm_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _fnOodbcFunction :: Bool _fnOexpectedCast :: Bool _partitionByOexpectedCast :: Bool _fnOexpectedType :: (Maybe TypeExtra) _partitionByOexpectedTypes :: ([TypeExtra]) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _fnOassignmentCastContext :: Bool _fnOcat :: Catalog _fnOdownEnv :: Environment _fnOflags :: TypeCheckFlags _fnOimCast :: (Maybe TypeExtra) _partitionByOassignmentCastContext :: Bool _partitionByOcat :: Catalog _partitionByOdownEnv :: Environment _partitionByOflags :: TypeCheckFlags _partitionByOimCast :: (Maybe TypeExtra) _orderByOcat :: Catalog _orderByOdownEnv :: Environment _orderByOflags :: TypeCheckFlags _orderByOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _fnIannotatedTree :: ScalarExpr _fnIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _fnIoriginalTree :: ScalarExpr _fnIupType :: (Maybe TypeExtra) _partitionByIannotatedTree :: ScalarExprList _partitionByIoriginalTree :: ScalarExprList _partitionByIupTypes :: ([Maybe TypeExtra]) _orderByIannotatedTree :: ScalarExprDirectionPairList _orderByIoriginalTree :: ScalarExprDirectionPairList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 13371 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 13377 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 13383 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 13389 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 13400 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 13406 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 179, column 17) _fnOodbcFunction = ({-# LINE 179 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13412 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 448, column 10) _tpe = ({-# LINE 448 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right _fnIupType {-# LINE 13418 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 461, column 9) _fnOexpectedCast = ({-# LINE 461 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13424 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 464, column 9) _partitionByOexpectedCast = ({-# LINE 464 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13430 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 752, column 28) _fnOexpectedType = ({-# LINE 752 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 13436 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 774, column 15) _partitionByOexpectedTypes = ({-# LINE 774 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} [] {-# LINE 13442 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WindowApp _annIannotatedTree _fnIannotatedTree _partitionByIannotatedTree _orderByIannotatedTree frm_ {-# LINE 13448 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WindowApp _annIoriginalTree _fnIoriginalTree _partitionByIoriginalTree _orderByIoriginalTree frm_ {-# LINE 13454 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 13460 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 13466 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13472 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13478 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 13484 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13490 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 13496 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13502 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13508 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionByOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 13514 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionByOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13520 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionByOdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 13526 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionByOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13532 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionByOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13538 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13544 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOdownEnv = ({-# LINE 215 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIdownEnv {-# LINE 13550 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13556 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _orderByOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13562 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _fnIannotatedTree,_fnIcolExprs,_fnIoriginalTree,_fnIupType) = fn_ _fnOassignmentCastContext _fnOcat _fnOdownEnv _fnOexpectedCast _fnOexpectedType _fnOflags _fnOimCast _fnOodbcFunction ( _partitionByIannotatedTree,_partitionByIoriginalTree,_partitionByIupTypes) = partitionBy_ _partitionByOassignmentCastContext _partitionByOcat _partitionByOdownEnv _partitionByOexpectedCast _partitionByOexpectedTypes _partitionByOflags _partitionByOimCast ( _orderByIannotatedTree,_orderByIoriginalTree) = orderBy_ _orderByOcat _orderByOdownEnv _orderByOflags _orderByOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Cast :: T_Annotation -> T_ScalarExpr -> T_TypeName -> T_ScalarExpr _sem_ScalarExpr_Cast ann_ expr_ tn_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _exprOodbcFunction :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _exprOassignmentCastContext :: Bool _exprOcat :: Catalog _exprOdownEnv :: Environment _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _tnOcat :: Catalog _tnOflags :: TypeCheckFlags _tnOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) _tnIannotatedTree :: TypeName _tnInamedType :: (Maybe TypeExtra) _tnIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 13634 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 13640 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 13646 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 13652 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 13663 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 13669 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 172, column 12) _exprOodbcFunction = ({-# LINE 172 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13675 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 272, column 10) _tpe = ({-# LINE 272 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} let nullability = fromMaybe False $ teNullable <$> _exprIupType setNullability te = te{teNullable = nullability} in maybe (Left []) (Right . setNullability) _tnInamedType {-# LINE 13683 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 276, column 10) _exprOexpectedType = ({-# LINE 276 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 13689 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 277, column 10) _exprOexpectedCast = ({-# LINE 277 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13695 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Cast _annIannotatedTree _exprIannotatedTree _tnIannotatedTree {-# LINE 13701 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Cast _annIoriginalTree _exprIoriginalTree _tnIoriginalTree {-# LINE 13707 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 13713 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 13719 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13725 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13731 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 13737 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13743 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 13749 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13755 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13761 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13767 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13773 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13779 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction ( _tnIannotatedTree,_tnInamedType,_tnIoriginalTree) = tn_ _tnOcat _tnOflags _tnOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_ImplicitCast :: T_Annotation -> T_ScalarExpr -> TypeExtra -> T_ScalarExpr _sem_ScalarExpr_ImplicitCast ann_ expr_ te_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _exprOodbcFunction :: Bool _exprOexpectedType :: (Maybe TypeExtra) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _exprOassignmentCastContext :: Bool _exprOcat :: Catalog _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 13843 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 13849 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 13855 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 13861 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 13872 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 13878 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 173, column 20) _exprOodbcFunction = ({-# LINE 173 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 13884 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 279, column 9) _tpe = ({-# LINE 279 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Right te_ {-# LINE 13890 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 280, column 9) _exprOexpectedType = ({-# LINE 280 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 13896 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ImplicitCast _annIannotatedTree _exprIannotatedTree te_ {-# LINE 13902 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ImplicitCast _annIoriginalTree _exprIoriginalTree te_ {-# LINE 13908 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 13914 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 13920 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13926 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13932 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 13938 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 13944 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 13950 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOexpectedCast = ({-# LINE 111 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 13956 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 13962 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 13968 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Case :: T_Annotation -> T_CaseScalarExprListScalarExprPairList -> T_MaybeScalarExpr -> T_ScalarExpr _sem_ScalarExpr_Case ann_ cases_ els_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _casesOwhenExpectedType :: (Maybe TypeExtra) _casesOthenExpectedType :: (Maybe TypeExtra) _elsOexpectedType :: (Maybe TypeExtra) _elsOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _casesOcat :: Catalog _casesOdownEnv :: Environment _casesOflags :: TypeCheckFlags _casesOimCast :: (Maybe TypeExtra) _elsOassignmentCastContext :: Bool _elsOcat :: Catalog _elsOdownEnv :: Environment _elsOflags :: TypeCheckFlags _elsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _casesIannotatedTree :: CaseScalarExprListScalarExprPairList _casesIoriginalTree :: CaseScalarExprListScalarExprPairList _casesIthenTypes :: ([Maybe TypeExtra]) _casesIupTypes :: ([Maybe TypeExtra]) _casesIwhenTypes :: ([[Maybe TypeExtra]]) _elsIannotatedTree :: MaybeScalarExpr _elsIoriginalTree :: MaybeScalarExpr _elsIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 14039 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 14045 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14051 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 14057 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 14068 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 14074 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 558, column 9) _whenTypes = ({-# LINE 558 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _casesIwhenTypes {-# LINE 14080 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 559, column 9) _thenTypes = ({-# LINE 559 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _casesIthenTypes ++ maybe [] ((:[]) . Just) _elsIupType {-# LINE 14086 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 561, column 9) _tpe = ({-# LINE 561 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do wt <- mapM (maybe (Left []) Right) $ concat _whenTypes bt <- ScalarType <$> _dialectTypeName "boolean" when (any ((/= bt) . teType) wt) $ Left [WrongTypes bt $ map teType wt] tt <- mapM (maybe (Left []) Right) _thenTypes tse <- resolveResultSetTypeExtra _lhsIcat tt return $ if isNothing _elsIoriginalTree then tse{teNullable=True} else tse {-# LINE 14101 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 573, column 9) _casesOwhenExpectedType = ({-# LINE 573 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do ws <- sequence $ concat _whenTypes w <- either (const Nothing) Just $ resolveResultSetTypeExtra _lhsIcat ws bt <- ScalarType <$> either (const Nothing) Just (_dialectTypeName "boolean") Just $ TypeExtra bt Nothing Nothing $ teNullable w {-# LINE 14111 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 579, column 9) _casesOthenExpectedType = ({-# LINE 579 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14117 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 580, column 9) _elsOexpectedType = ({-# LINE 580 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14123 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 581, column 9) _elsOexpectedCast = ({-# LINE 581 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} True {-# LINE 14129 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Case _annIannotatedTree _casesIannotatedTree _elsIannotatedTree {-# LINE 14135 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Case _annIoriginalTree _casesIoriginalTree _elsIoriginalTree {-# LINE 14141 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 14147 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 14153 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14159 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14165 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14171 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOdownEnv = ({-# LINE 553 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 14177 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14183 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14189 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 14195 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14201 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 14207 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14213 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14219 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _casesIannotatedTree,_casesIoriginalTree,_casesIthenTypes,_casesIupTypes,_casesIwhenTypes) = cases_ _casesOcat _casesOdownEnv _casesOflags _casesOimCast _casesOthenExpectedType _casesOwhenExpectedType ( _elsIannotatedTree,_elsIoriginalTree,_elsIupType) = els_ _elsOassignmentCastContext _elsOcat _elsOdownEnv _elsOexpectedCast _elsOexpectedType _elsOflags _elsOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_CaseSimple :: T_Annotation -> T_ScalarExpr -> T_CaseScalarExprListScalarExprPairList -> T_MaybeScalarExpr -> T_ScalarExpr _sem_ScalarExpr_CaseSimple ann_ value_ cases_ els_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _valueOodbcFunction :: Bool _casesOwhenExpectedType :: (Maybe TypeExtra) _valueOexpectedType :: (Maybe TypeExtra) _valueOexpectedCast :: Bool _casesOthenExpectedType :: (Maybe TypeExtra) _elsOexpectedType :: (Maybe TypeExtra) _elsOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _valueOassignmentCastContext :: Bool _valueOcat :: Catalog _valueOdownEnv :: Environment _valueOflags :: TypeCheckFlags _valueOimCast :: (Maybe TypeExtra) _casesOcat :: Catalog _casesOdownEnv :: Environment _casesOflags :: TypeCheckFlags _casesOimCast :: (Maybe TypeExtra) _elsOassignmentCastContext :: Bool _elsOcat :: Catalog _elsOdownEnv :: Environment _elsOflags :: TypeCheckFlags _elsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _valueIannotatedTree :: ScalarExpr _valueIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _valueIoriginalTree :: ScalarExpr _valueIupType :: (Maybe TypeExtra) _casesIannotatedTree :: CaseScalarExprListScalarExprPairList _casesIoriginalTree :: CaseScalarExprListScalarExprPairList _casesIthenTypes :: ([Maybe TypeExtra]) _casesIupTypes :: ([Maybe TypeExtra]) _casesIwhenTypes :: ([[Maybe TypeExtra]]) _elsIannotatedTree :: MaybeScalarExpr _elsIoriginalTree :: MaybeScalarExpr _elsIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 14305 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 14311 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14317 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 14323 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 14334 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 14340 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 174, column 18) _valueOodbcFunction = ({-# LINE 174 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 14346 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 558, column 9) _whenTypes = ({-# LINE 558 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _casesIwhenTypes {-# LINE 14352 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 559, column 9) _thenTypes = ({-# LINE 559 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _casesIthenTypes ++ maybe [] ((:[]) . Just) _elsIupType {-# LINE 14358 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 583, column 9) _whent = ({-# LINE 583 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do wt <- mapM (maybe (Left []) Right) $ concat _whenTypes vt <- maybe (Left []) Right _valueIupType resolveResultSetTypeExtra _lhsIcat (vt : wt) {-# LINE 14367 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 588, column 9) _tpe = ({-# LINE 588 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do _ <- _whent tt <- mapM (maybe (Left []) Right) _thenTypes resolveResultSetTypeExtra _lhsIcat tt {-# LINE 14376 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 593, column 9) _casesOwhenExpectedType = ({-# LINE 593 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _whent {-# LINE 14382 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 594, column 9) _valueOexpectedType = ({-# LINE 594 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _whent {-# LINE 14388 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 595, column 9) _valueOexpectedCast = ({-# LINE 595 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 14394 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 596, column 9) _casesOthenExpectedType = ({-# LINE 596 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14400 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 597, column 9) _elsOexpectedType = ({-# LINE 597 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14406 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 598, column 9) _elsOexpectedCast = ({-# LINE 598 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} True {-# LINE 14412 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CaseSimple _annIannotatedTree _valueIannotatedTree _casesIannotatedTree _elsIannotatedTree {-# LINE 14418 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CaseSimple _annIoriginalTree _valueIoriginalTree _casesIoriginalTree _elsIoriginalTree {-# LINE 14424 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 14430 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 14436 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14442 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14448 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 14454 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14460 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 14466 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14472 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14478 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14484 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOdownEnv = ({-# LINE 553 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 14490 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14496 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14502 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 14508 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14514 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 14520 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14526 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14532 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _valueIannotatedTree,_valueIcolExprs,_valueIoriginalTree,_valueIupType) = value_ _valueOassignmentCastContext _valueOcat _valueOdownEnv _valueOexpectedCast _valueOexpectedType _valueOflags _valueOimCast _valueOodbcFunction ( _casesIannotatedTree,_casesIoriginalTree,_casesIthenTypes,_casesIupTypes,_casesIwhenTypes) = cases_ _casesOcat _casesOdownEnv _casesOflags _casesOimCast _casesOthenExpectedType _casesOwhenExpectedType ( _elsIannotatedTree,_elsIoriginalTree,_elsIupType) = els_ _elsOassignmentCastContext _elsOcat _elsOdownEnv _elsOexpectedCast _elsOexpectedType _elsOflags _elsOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Parens :: T_Annotation -> T_ScalarExpr -> T_ScalarExpr _sem_ScalarExpr_Parens ann_ ex_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _exOodbcFunction :: Bool _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _exOassignmentCastContext :: Bool _exOcat :: Catalog _exOdownEnv :: Environment _exOexpectedCast :: Bool _exOexpectedType :: (Maybe TypeExtra) _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: ScalarExpr _exIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exIoriginalTree :: ScalarExpr _exIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 14597 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 14603 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14609 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 14615 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 14626 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 14632 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 181, column 14) _exOodbcFunction = ({-# LINE 181 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 14638 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 614, column 5) _tpe = ({-# LINE 614 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right _exIupType {-# LINE 14644 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Parens _annIannotatedTree _exIannotatedTree {-# LINE 14650 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Parens _annIoriginalTree _exIoriginalTree {-# LINE 14656 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 14662 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 14668 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14674 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14680 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 14686 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14692 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 14698 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOexpectedCast = ({-# LINE 111 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 14704 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOexpectedType = ({-# LINE 110 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedType {-# LINE 14710 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14716 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14722 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIcolExprs,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOdownEnv _exOexpectedCast _exOexpectedType _exOflags _exOimCast _exOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_InPredicate :: T_Annotation -> T_ScalarExpr -> Bool -> T_InList -> T_ScalarExpr _sem_ScalarExpr_InPredicate ann_ expr_ i_ list_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _exprOodbcFunction :: Bool _rt :: (Either [TypeError] TypeExtra) _listOexpectedType :: (Maybe TypeExtra) _exprOexpectedType :: (Maybe TypeExtra) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _exprOassignmentCastContext :: Bool _exprOcat :: Catalog _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _listOcat :: Catalog _listOdownEnv :: Environment _listOexpectedCast :: Bool _listOflags :: TypeCheckFlags _listOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) _listIannotatedTree :: InList _listIlistType :: (Either [TypeError] TypeExtra) _listIoriginalTree :: InList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 14795 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 14801 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 14807 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 14813 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 14824 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 14830 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 180, column 19) _exprOodbcFunction = ({-# LINE 180 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 14836 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 668, column 9) _rt = ({-# LINE 668 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do lt <- _listIlistType expt <- maybe (Left []) Right _exprIupType resolveResultSetTypeExtra _lhsIcat [expt, lt] {-# LINE 14845 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 672, column 9) _tpe = ({-# LINE 672 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do r <- _rt bt <- ScalarType <$> _dialectTypeName "boolean" return $ TypeExtra bt Nothing Nothing $ teNullable r {-# LINE 14854 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 676, column 9) _listOexpectedType = ({-# LINE 676 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _rt {-# LINE 14860 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 677, column 9) _exprOexpectedType = ({-# LINE 677 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _rt {-# LINE 14866 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} InPredicate _annIannotatedTree _exprIannotatedTree i_ _listIannotatedTree {-# LINE 14872 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} InPredicate _annIoriginalTree _exprIoriginalTree i_ _listIoriginalTree {-# LINE 14878 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 14884 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 14890 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14896 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14902 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 14908 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14914 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 14920 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOexpectedCast = ({-# LINE 111 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 14926 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14932 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14938 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _listOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 14944 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _listOdownEnv = ({-# LINE 215 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIdownEnv {-# LINE 14950 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _listOexpectedCast = ({-# LINE 661 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 14956 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _listOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 14962 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _listOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 14968 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction ( _listIannotatedTree,_listIlistType,_listIoriginalTree) = list_ _listOcat _listOdownEnv _listOexpectedCast _listOexpectedType _listOflags _listOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_Exists :: T_Annotation -> T_QueryExpr -> T_ScalarExpr _sem_ScalarExpr_Exists ann_ sel_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _selOouterDownEnv :: (Maybe Environment) _selOexpectedType :: (Maybe [TypeExtra]) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _selOassignmentCastContext :: Bool _selOcat :: Catalog _selOflags :: TypeCheckFlags _selOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _selIannotatedTree :: QueryExpr _selIoriginalTree :: QueryExpr _selIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 15028 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 15034 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 15040 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 15046 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 15057 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 15063 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 627, column 9) _tpe = ({-# LINE 627 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} (mkTypeExtraNN . ScalarType) <$> (_dialectTypeName "boolean") {-# LINE 15069 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 649, column 9) _selOouterDownEnv = ({-# LINE 649 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Just _lhsIdownEnv {-# LINE 15075 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 651, column 9) _selOexpectedType = ({-# LINE 651 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} liftM (map snd) _selIupType {-# LINE 15081 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Exists _annIannotatedTree _selIannotatedTree {-# LINE 15087 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Exists _annIoriginalTree _selIoriginalTree {-# LINE 15093 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 15099 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 15105 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15111 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15117 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 15123 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15129 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15135 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 15141 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _selIannotatedTree,_selIoriginalTree,_selIupType) = sel_ _selOassignmentCastContext _selOcat _selOexpectedType _selOflags _selOimCast _selOouterDownEnv in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_ScalarSubQuery :: T_Annotation -> T_QueryExpr -> T_ScalarExpr _sem_ScalarExpr_ScalarSubQuery ann_ sel_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _selOouterDownEnv :: (Maybe Environment) _selOexpectedType :: (Maybe [TypeExtra]) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _selOassignmentCastContext :: Bool _selOcat :: Catalog _selOflags :: TypeCheckFlags _selOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _selIannotatedTree :: QueryExpr _selIoriginalTree :: QueryExpr _selIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 15199 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 15205 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 15211 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 15217 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 15228 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 15234 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 637, column 9) _tpe = ({-# LINE 637 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} do selType <- maybe (Left []) Right _selIupType case length selType of 0 -> Left [InternalError "no columns in scalar subquery?"] 1 -> Right $ snd $ head selType _ -> Right $ mkTypeExtra $ AnonymousCompositeType $ map (teType . snd) selType {-# LINE 15246 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 647, column 9) _selOouterDownEnv = ({-# LINE 647 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Just _lhsIdownEnv {-# LINE 15252 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 651, column 9) _selOexpectedType = ({-# LINE 651 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} liftM (map snd) _selIupType {-# LINE 15258 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ScalarSubQuery _annIannotatedTree _selIannotatedTree {-# LINE 15264 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ScalarSubQuery _annIoriginalTree _selIoriginalTree {-# LINE 15270 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 15276 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 15282 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15288 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15294 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 15300 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15306 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15312 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 15318 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _selIannotatedTree,_selIoriginalTree,_selIupType) = sel_ _selOassignmentCastContext _selOcat _selOexpectedType _selOflags _selOimCast _selOouterDownEnv in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_LiftApp :: T_Annotation -> T_Name -> LiftFlavour -> T_ScalarExprList -> T_ScalarExpr _sem_ScalarExpr_LiftApp ann_ oper_ flav_ args_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _argsOexpectedCast :: Bool _argsOexpectedTypes :: ([TypeExtra]) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _operOcat :: Catalog _operOflags :: TypeCheckFlags _operOimCast :: (Maybe TypeExtra) _operOtpe :: (Either [TypeError] TypeExtra) _argsOassignmentCastContext :: Bool _argsOcat :: Catalog _argsOdownEnv :: Environment _argsOflags :: TypeCheckFlags _argsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _operIannotatedTree :: Name _operIoriginalTree :: Name _argsIannotatedTree :: ScalarExprList _argsIoriginalTree :: ScalarExprList _argsIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 15385 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 15391 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 15397 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 15403 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 15414 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 15420 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 454, column 9) _argsOexpectedCast = ({-# LINE 454 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 15426 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 734, column 9) _tpe = ({-# LINE 734 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 15432 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 771, column 13) _argsOexpectedTypes = ({-# LINE 771 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} [] {-# LINE 15438 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} LiftApp _annIannotatedTree _operIannotatedTree flav_ _argsIannotatedTree {-# LINE 15444 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} LiftApp _annIoriginalTree _operIoriginalTree flav_ _argsIoriginalTree {-# LINE 15450 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 15456 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 15462 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15468 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15474 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15480 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15486 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 15492 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (from local) _operOtpe = ({-# LINE 46 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} _tpe {-# LINE 15498 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 15504 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15510 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 15516 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15522 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 15528 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _operIannotatedTree,_operIoriginalTree) = oper_ _operOcat _operOflags _operOimCast _operOtpe ( _argsIannotatedTree,_argsIoriginalTree,_argsIupTypes) = args_ _argsOassignmentCastContext _argsOcat _argsOdownEnv _argsOexpectedCast _argsOexpectedTypes _argsOflags _argsOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_OdbcLiteral :: T_Annotation -> OdbcLiteralType -> String -> T_ScalarExpr _sem_ScalarExpr_OdbcLiteral ann_ olt_ val_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 15580 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 15586 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 15592 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 15598 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 15609 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 15615 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 306, column 10) _tpe = ({-# LINE 306 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case olt_ of OLDate -> (mkTypeExtra . ScalarType) <$> _dialectTypeName "date" OLTime -> (mkTypeExtra . ScalarType) <$> _dialectTypeName "time" OLTimestamp -> (mkTypeExtra . ScalarType) <$> _dialectTypeName "timestamp" {-# LINE 15624 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} OdbcLiteral _annIannotatedTree olt_ val_ {-# LINE 15630 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} OdbcLiteral _annIoriginalTree olt_ val_ {-# LINE 15636 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 15642 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 15648 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15654 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15660 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_OdbcFunc :: T_Annotation -> T_ScalarExpr -> T_ScalarExpr _sem_ScalarExpr_OdbcFunc ann_ ex_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe TypeExtra) _annOimCast :: (Maybe TypeExtra) _dialectTypeName :: (Text -> Either [TypeError] Text) _exOodbcFunction :: Bool _exOcat :: Catalog _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr _annOcat :: Catalog _annOflags :: TypeCheckFlags _exOassignmentCastContext :: Bool _exOdownEnv :: Environment _exOexpectedCast :: Bool _exOexpectedType :: (Maybe TypeExtra) _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: ScalarExpr _exIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exIoriginalTree :: ScalarExpr _exIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 42, column 7) _lhsOcolExprs = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} let a = _annIoriginalTree doStar is = map (\((q,n),t) -> let a' = a {anType = Just t} in (Nmc $ T.unpack n, Just t, Identifier a' $ Name a' $ [Nmc q' | let q' = T.unpack q, not $ null q'] ++ [Nmc $ T.unpack n]) ) is in case _originalTree of Star _ | Right is <- E.envExpandStar Nothing _lhsIdownEnv -> doStar is QStar _ q | Right is <- E.envExpandStar (Just q) _lhsIdownEnv -> doStar is _ -> [(columnName _originalTree,_upType,_annotatedTree)] {-# LINE 15719 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 35, column 9) _annOtpe = ({-# LINE 35 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _tpe {-# LINE 15725 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 36, column 9) _upType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 15731 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 37, column 9) _lhsOupType = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _upType {-# LINE 15737 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 38, column 9) _annOimCast = ({-# LINE 38 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _upType of Nothing -> _lhsIexpectedType Just upType -> do expType <- _lhsIexpectedType guard $ needsImplicitCast _lhsIexpectedCast upType expType return $ implicitCastType _lhsIexpectedCast upType expType {-# LINE 15748 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 45, column 9) _dialectTypeName = ({-# LINE 45 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} maybe (Left []) Right . ansiTypeNameToDialect (tcfDialect _lhsIflags) {-# LINE 15754 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 182, column 16) _exOodbcFunction = ({-# LINE 182 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} True {-# LINE 15760 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 312, column 10) _exOcat = ({-# LINE 312 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} id _lhsIcat {-# LINE 15766 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 313, column 10) _tpe = ({-# LINE 313 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _exIoriginalTree of Extract {} -> maybe (Left []) Right _exIupType App {} -> maybe (Left []) Right _exIupType _ -> Left [OdbcFuncBadContent] {-# LINE 15775 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} OdbcFunc _annIannotatedTree _exIannotatedTree {-# LINE 15781 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} OdbcFunc _annIoriginalTree _exIoriginalTree {-# LINE 15787 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 15793 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 15799 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 15805 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15811 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 15817 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 15823 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOexpectedCast = ({-# LINE 111 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 15829 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOexpectedType = ({-# LINE 110 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedType {-# LINE 15835 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 15841 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 15847 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIcolExprs,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOdownEnv _exOexpectedCast _exOexpectedType _exOflags _exOimCast _exOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExpr_AntiScalarExpr :: String -> T_ScalarExpr _sem_ScalarExpr_AntiScalarExpr string_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast _lhsIodbcFunction -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _lhsOupType :: (Maybe TypeExtra) _lhsOannotatedTree :: ScalarExpr _lhsOoriginalTree :: ScalarExpr -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 232, column 21) _lhsOcolExprs = ({-# LINE 232 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} [(Nmc "?anti?",Nothing,_originalTree)] {-# LINE 15873 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 102, column 9) _lhsOupType = ({-# LINE 102 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} either (const Nothing) Just _tpe {-# LINE 15879 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 734, column 9) _tpe = ({-# LINE 734 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Left [] {-# LINE 15885 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AntiScalarExpr string_ {-# LINE 15891 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AntiScalarExpr string_ {-# LINE 15897 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 15903 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 15909 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupType))) -- ScalarExprDirectionPair ------------------------------------- {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprDirectionPair originalTree : ScalarExprDirectionPair alternatives: alternative Tuple: child x1 : ScalarExpr child x2 : {Direction} child x3 : {NullsOrder} visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprDirectionPair = ( ScalarExpr,(Direction),(NullsOrder)) -- cata _sem_ScalarExprDirectionPair :: ScalarExprDirectionPair -> T_ScalarExprDirectionPair _sem_ScalarExprDirectionPair ( x1,x2,x3) = (_sem_ScalarExprDirectionPair_Tuple (_sem_ScalarExpr x1) x2 x3) -- semantic domain type T_ScalarExprDirectionPair = Catalog -> Environment -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprDirectionPair,ScalarExprDirectionPair) data Inh_ScalarExprDirectionPair = Inh_ScalarExprDirectionPair {_cat_Inh_ScalarExprDirectionPair :: Catalog,_downEnv_Inh_ScalarExprDirectionPair :: Environment,_flags_Inh_ScalarExprDirectionPair :: TypeCheckFlags,_imCast_Inh_ScalarExprDirectionPair :: (Maybe TypeExtra)} data Syn_ScalarExprDirectionPair = Syn_ScalarExprDirectionPair {_annotatedTree_Syn_ScalarExprDirectionPair :: ScalarExprDirectionPair,_originalTree_Syn_ScalarExprDirectionPair :: ScalarExprDirectionPair} _wrap_ScalarExprDirectionPair :: T_ScalarExprDirectionPair -> Inh_ScalarExprDirectionPair -> Syn_ScalarExprDirectionPair _wrap_ScalarExprDirectionPair sem (Inh_ScalarExprDirectionPair _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast in (Syn_ScalarExprDirectionPair _lhsOannotatedTree _lhsOoriginalTree)) _sem_ScalarExprDirectionPair_Tuple :: T_ScalarExpr -> Direction -> NullsOrder -> T_ScalarExprDirectionPair _sem_ScalarExprDirectionPair_Tuple x1_ x2_ x3_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _x1OexpectedCast :: Bool _x1OodbcFunction :: Bool _x1OexpectedType :: (Maybe TypeExtra) _x1OassignmentCastContext :: Bool _lhsOannotatedTree :: ScalarExprDirectionPair _lhsOoriginalTree :: ScalarExprDirectionPair _x1Ocat :: Catalog _x1OdownEnv :: Environment _x1Oflags :: TypeCheckFlags _x1OimCast :: (Maybe TypeExtra) _x1IannotatedTree :: ScalarExpr _x1IcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _x1IoriginalTree :: ScalarExpr _x1IupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 92, column 37) _x1OexpectedCast = ({-# LINE 92 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 15979 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 152, column 13) _x1OodbcFunction = ({-# LINE 152 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 15985 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 757, column 11) _x1OexpectedType = ({-# LINE 757 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 15991 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 817, column 37) _x1OassignmentCastContext = ({-# LINE 817 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 15997 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IannotatedTree,x2_,x3_) {-# LINE 16003 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IoriginalTree,x2_,x3_) {-# LINE 16009 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16015 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16021 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16027 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1OdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 16033 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16039 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16045 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _x1IannotatedTree,_x1IcolExprs,_x1IoriginalTree,_x1IupType) = x1_ _x1OassignmentCastContext _x1Ocat _x1OdownEnv _x1OexpectedCast _x1OexpectedType _x1Oflags _x1OimCast _x1OodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExprDirectionPairList --------------------------------- {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprDirectionPairList originalTree : ScalarExprDirectionPairList alternatives: alternative Cons: child hd : ScalarExprDirectionPair child tl : ScalarExprDirectionPairList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprDirectionPairList = [ScalarExprDirectionPair] -- cata _sem_ScalarExprDirectionPairList :: ScalarExprDirectionPairList -> T_ScalarExprDirectionPairList _sem_ScalarExprDirectionPairList list = (Prelude.foldr _sem_ScalarExprDirectionPairList_Cons _sem_ScalarExprDirectionPairList_Nil (Prelude.map _sem_ScalarExprDirectionPair list)) -- semantic domain type T_ScalarExprDirectionPairList = Catalog -> Environment -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprDirectionPairList,ScalarExprDirectionPairList) data Inh_ScalarExprDirectionPairList = Inh_ScalarExprDirectionPairList {_cat_Inh_ScalarExprDirectionPairList :: Catalog,_downEnv_Inh_ScalarExprDirectionPairList :: Environment,_flags_Inh_ScalarExprDirectionPairList :: TypeCheckFlags,_imCast_Inh_ScalarExprDirectionPairList :: (Maybe TypeExtra)} data Syn_ScalarExprDirectionPairList = Syn_ScalarExprDirectionPairList {_annotatedTree_Syn_ScalarExprDirectionPairList :: ScalarExprDirectionPairList,_originalTree_Syn_ScalarExprDirectionPairList :: ScalarExprDirectionPairList} _wrap_ScalarExprDirectionPairList :: T_ScalarExprDirectionPairList -> Inh_ScalarExprDirectionPairList -> Syn_ScalarExprDirectionPairList _wrap_ScalarExprDirectionPairList sem (Inh_ScalarExprDirectionPairList _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast in (Syn_ScalarExprDirectionPairList _lhsOannotatedTree _lhsOoriginalTree)) _sem_ScalarExprDirectionPairList_Cons :: T_ScalarExprDirectionPair -> T_ScalarExprDirectionPairList -> T_ScalarExprDirectionPairList _sem_ScalarExprDirectionPairList_Cons hd_ tl_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ScalarExprDirectionPairList _lhsOoriginalTree :: ScalarExprDirectionPairList _hdOcat :: Catalog _hdOdownEnv :: Environment _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOdownEnv :: Environment _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: ScalarExprDirectionPair _hdIoriginalTree :: ScalarExprDirectionPair _tlIannotatedTree :: ScalarExprDirectionPairList _tlIoriginalTree :: ScalarExprDirectionPairList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 16119 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 16125 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16131 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16137 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16143 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOdownEnv = ({-# LINE 215 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIdownEnv {-# LINE 16149 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16155 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16161 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16167 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOdownEnv = ({-# LINE 215 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIdownEnv {-# LINE 16173 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16179 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16185 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOdownEnv _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOdownEnv _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_ScalarExprDirectionPairList_Nil :: T_ScalarExprDirectionPairList _sem_ScalarExprDirectionPairList_Nil = (\ _lhsIcat _lhsIdownEnv _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ScalarExprDirectionPairList _lhsOoriginalTree :: ScalarExprDirectionPairList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 16204 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 16210 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16216 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16222 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExprList ---------------------------------------------- {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog downEnv : Environment expectedCast : Bool expectedTypes : [TypeExtra] flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprList originalTree : ScalarExprList upTypes : [Maybe TypeExtra] alternatives: alternative Cons: child hd : ScalarExpr child tl : ScalarExprList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprList = [ScalarExpr] -- cata _sem_ScalarExprList :: ScalarExprList -> T_ScalarExprList _sem_ScalarExprList list = (Prelude.foldr _sem_ScalarExprList_Cons _sem_ScalarExprList_Nil (Prelude.map _sem_ScalarExpr list)) -- semantic domain type T_ScalarExprList = Bool -> Catalog -> Environment -> Bool -> ([TypeExtra]) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprList,ScalarExprList,([Maybe TypeExtra])) data Inh_ScalarExprList = Inh_ScalarExprList {_assignmentCastContext_Inh_ScalarExprList :: Bool,_cat_Inh_ScalarExprList :: Catalog,_downEnv_Inh_ScalarExprList :: Environment,_expectedCast_Inh_ScalarExprList :: Bool,_expectedTypes_Inh_ScalarExprList :: ([TypeExtra]),_flags_Inh_ScalarExprList :: TypeCheckFlags,_imCast_Inh_ScalarExprList :: (Maybe TypeExtra)} data Syn_ScalarExprList = Syn_ScalarExprList {_annotatedTree_Syn_ScalarExprList :: ScalarExprList,_originalTree_Syn_ScalarExprList :: ScalarExprList,_upTypes_Syn_ScalarExprList :: ([Maybe TypeExtra])} _wrap_ScalarExprList :: T_ScalarExprList -> Inh_ScalarExprList -> Syn_ScalarExprList _wrap_ScalarExprList sem (Inh_ScalarExprList _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedTypes _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupTypes) = sem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedTypes _lhsIflags _lhsIimCast in (Syn_ScalarExprList _lhsOannotatedTree _lhsOoriginalTree _lhsOupTypes)) _sem_ScalarExprList_Cons :: T_ScalarExpr -> T_ScalarExprList -> T_ScalarExprList _sem_ScalarExprList_Cons hd_ tl_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedTypes _lhsIflags _lhsIimCast -> (let _hdOodbcFunction :: Bool _lhsOupTypes :: ([Maybe TypeExtra]) _hdOexpectedType :: (Maybe TypeExtra) _tlOexpectedTypes :: ([TypeExtra]) _hdOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExprList _lhsOoriginalTree :: ScalarExprList _hdOassignmentCastContext :: Bool _hdOcat :: Catalog _hdOdownEnv :: Environment _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOassignmentCastContext :: Bool _tlOcat :: Catalog _tlOdownEnv :: Environment _tlOexpectedCast :: Bool _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: ScalarExpr _hdIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _hdIoriginalTree :: ScalarExpr _hdIupType :: (Maybe TypeExtra) _tlIannotatedTree :: ScalarExprList _tlIoriginalTree :: ScalarExprList _tlIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 155, column 12) _hdOodbcFunction = ({-# LINE 155 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 16315 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 196, column 9) _lhsOupTypes = ({-# LINE 196 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _hdIupType : _tlIupTypes {-# LINE 16321 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 197, column 9) (_hdOexpectedType,_tlOexpectedTypes) = ({-# LINE 197 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} case _lhsIexpectedTypes of (x:xs) -> (Just x,xs) [] -> (Nothing,[]) {-# LINE 16329 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 201, column 9) _hdOexpectedCast = ({-# LINE 201 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 16335 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 16341 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 16347 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16353 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16359 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 16365 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16371 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 16377 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16383 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16389 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 16395 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16401 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 16407 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOexpectedCast = ({-# LINE 192 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIexpectedCast {-# LINE 16413 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16419 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16425 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIcolExprs,_hdIoriginalTree,_hdIupType) = hd_ _hdOassignmentCastContext _hdOcat _hdOdownEnv _hdOexpectedCast _hdOexpectedType _hdOflags _hdOimCast _hdOodbcFunction ( _tlIannotatedTree,_tlIoriginalTree,_tlIupTypes) = tl_ _tlOassignmentCastContext _tlOcat _tlOdownEnv _tlOexpectedCast _tlOexpectedTypes _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupTypes))) _sem_ScalarExprList_Nil :: T_ScalarExprList _sem_ScalarExprList_Nil = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedTypes _lhsIflags _lhsIimCast -> (let _lhsOupTypes :: ([Maybe TypeExtra]) _lhsOannotatedTree :: ScalarExprList _lhsOoriginalTree :: ScalarExprList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 202, column 11) _lhsOupTypes = ({-# LINE 202 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} [] {-# LINE 16448 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 16454 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 16460 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16466 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16472 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupTypes))) -- ScalarExprListList ------------------------------------------ {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog downEnv : Environment expectedCast : Bool expectedType : Maybe [TypeExtra] flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprListList originalTree : ScalarExprListList upType : Either [TypeError] [(Text,TypeExtra)] alternatives: alternative Cons: child hd : ScalarExprTransposedList child tl : ScalarExprListList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprListList = [ScalarExprTransposedList] -- cata _sem_ScalarExprListList :: ScalarExprListList -> T_ScalarExprListList _sem_ScalarExprListList list = (Prelude.foldr _sem_ScalarExprListList_Cons _sem_ScalarExprListList_Nil (Prelude.map _sem_ScalarExprTransposedList list)) -- semantic domain type T_ScalarExprListList = Bool -> Catalog -> Environment -> Bool -> (Maybe [TypeExtra]) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprListList,ScalarExprListList,(Either [TypeError] [(Text,TypeExtra)])) data Inh_ScalarExprListList = Inh_ScalarExprListList {_assignmentCastContext_Inh_ScalarExprListList :: Bool,_cat_Inh_ScalarExprListList :: Catalog,_downEnv_Inh_ScalarExprListList :: Environment,_expectedCast_Inh_ScalarExprListList :: Bool,_expectedType_Inh_ScalarExprListList :: (Maybe [TypeExtra]),_flags_Inh_ScalarExprListList :: TypeCheckFlags,_imCast_Inh_ScalarExprListList :: (Maybe TypeExtra)} data Syn_ScalarExprListList = Syn_ScalarExprListList {_annotatedTree_Syn_ScalarExprListList :: ScalarExprListList,_originalTree_Syn_ScalarExprListList :: ScalarExprListList,_upType_Syn_ScalarExprListList :: (Either [TypeError] [(Text,TypeExtra)])} _wrap_ScalarExprListList :: T_ScalarExprListList -> Inh_ScalarExprListList -> Syn_ScalarExprListList _wrap_ScalarExprListList sem (Inh_ScalarExprListList _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType) = sem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast in (Syn_ScalarExprListList _lhsOannotatedTree _lhsOoriginalTree _lhsOupType)) _sem_ScalarExprListList_Cons :: T_ScalarExprTransposedList -> T_ScalarExprListList -> T_ScalarExprListList _sem_ScalarExprListList_Cons hd_ tl_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOupType :: (Either [TypeError] [(Text,TypeExtra)]) _hdOexpectedCast :: Bool _tlOexpectedCast :: Bool _lhsOannotatedTree :: ScalarExprListList _lhsOoriginalTree :: ScalarExprListList _hdOcat :: Catalog _hdOexpectedType :: (Maybe [TypeExtra]) _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOassignmentCastContext :: Bool _tlOcat :: Catalog _tlOdownEnv :: Environment _tlOexpectedType :: (Maybe [TypeExtra]) _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: ScalarExprTransposedList _hdIoriginalTree :: ScalarExprTransposedList _hdIupType :: (Maybe [TypeExtra]) _tlIannotatedTree :: ScalarExprListList _tlIoriginalTree :: ScalarExprListList _tlIupType :: (Either [TypeError] [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 191, column 9) _lhsOupType = ({-# LINE 191 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} do a <- maybe (Left [InternalError "type error in VALUES clause"]) Right _hdIupType b <- _tlIupType unless (not $ null a) $ Left [InternalError "empty row in VALUES clause"] let a' = map ("",) a itError = Left [IncompatibleUnionTypes (CompositeType a') (CompositeType b)] unless (null b || length a == length b) itError if null b then return $ zip [T.pack ("values%" ++ show k) | k <- [(0::Int)..]] a else do let uts = zipWithM (\te1 (_,te2) -> resolveResultSetTypeExtra _lhsIcat [te1,te2]) a b case uts of Left{} -> itError Right uts' -> return $ zipWith (\(n,_) te -> (n,te)) b uts' {-# LINE 16576 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 209, column 9) _hdOexpectedCast = ({-# LINE 209 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedCast {-# LINE 16582 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 210, column 9) _tlOexpectedCast = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedCast {-# LINE 16588 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 16594 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 16600 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16606 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16612 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16618 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOexpectedType = ({-# LINE 169 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedType {-# LINE 16624 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16630 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16636 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 16642 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16648 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOdownEnv = ({-# LINE 183 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIdownEnv {-# LINE 16654 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOexpectedType = ({-# LINE 186 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedType {-# LINE 16660 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16666 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16672 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree,_hdIupType) = hd_ _hdOcat _hdOexpectedCast _hdOexpectedType _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree,_tlIupType) = tl_ _tlOassignmentCastContext _tlOcat _tlOdownEnv _tlOexpectedCast _tlOexpectedType _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExprListList_Nil :: T_ScalarExprListList _sem_ScalarExprListList_Nil = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOupType :: (Either [TypeError] [(Text,TypeExtra)]) _lhsOannotatedTree :: ScalarExprListList _lhsOoriginalTree :: ScalarExprListList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 211, column 11) _lhsOupType = ({-# LINE 211 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Right [] {-# LINE 16695 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 16701 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 16707 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16713 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16719 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) -- ScalarExprListStatementListTriple --------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprListStatementListTriple originalTree : ScalarExprListStatementListTriple alternatives: alternative Tuple: child x1 : ScalarExprList child x2 : StatementList visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprListStatementListTriple = ( ScalarExprList,StatementList) -- cata _sem_ScalarExprListStatementListTriple :: ScalarExprListStatementListTriple -> T_ScalarExprListStatementListTriple _sem_ScalarExprListStatementListTriple ( x1,x2) = (_sem_ScalarExprListStatementListTriple_Tuple (_sem_ScalarExprList x1) (_sem_StatementList x2)) -- semantic domain type T_ScalarExprListStatementListTriple = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprListStatementListTriple,ScalarExprListStatementListTriple) data Inh_ScalarExprListStatementListTriple = Inh_ScalarExprListStatementListTriple {_cat_Inh_ScalarExprListStatementListTriple :: Catalog,_flags_Inh_ScalarExprListStatementListTriple :: TypeCheckFlags,_imCast_Inh_ScalarExprListStatementListTriple :: (Maybe TypeExtra)} data Syn_ScalarExprListStatementListTriple = Syn_ScalarExprListStatementListTriple {_annotatedTree_Syn_ScalarExprListStatementListTriple :: ScalarExprListStatementListTriple,_originalTree_Syn_ScalarExprListStatementListTriple :: ScalarExprListStatementListTriple} _wrap_ScalarExprListStatementListTriple :: T_ScalarExprListStatementListTriple -> Inh_ScalarExprListStatementListTriple -> Syn_ScalarExprListStatementListTriple _wrap_ScalarExprListStatementListTriple sem (Inh_ScalarExprListStatementListTriple _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_ScalarExprListStatementListTriple _lhsOannotatedTree _lhsOoriginalTree)) _sem_ScalarExprListStatementListTriple_Tuple :: T_ScalarExprList -> T_StatementList -> T_ScalarExprListStatementListTriple _sem_ScalarExprListStatementListTriple_Tuple x1_ x2_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _x1OdownEnv :: Environment _x1OexpectedCast :: Bool _x1OexpectedTypes :: ([TypeExtra]) _x1OassignmentCastContext :: Bool _lhsOannotatedTree :: ScalarExprListStatementListTriple _lhsOoriginalTree :: ScalarExprListStatementListTriple _x1Ocat :: Catalog _x1Oflags :: TypeCheckFlags _x1OimCast :: (Maybe TypeExtra) _x2Ocat :: Catalog _x2Oflags :: TypeCheckFlags _x2OimCast :: (Maybe TypeExtra) _x1IannotatedTree :: ScalarExprList _x1IoriginalTree :: ScalarExprList _x1IupTypes :: ([Maybe TypeExtra]) _x2IannotatedTree :: StatementList _x2IoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 93, column 47) _x1OdownEnv = ({-# LINE 93 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 16787 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 94, column 47) _x1OexpectedCast = ({-# LINE 94 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 16793 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 95, column 47) _x1OexpectedTypes = ({-# LINE 95 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} [] {-# LINE 16799 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 818, column 47) _x1OassignmentCastContext = ({-# LINE 818 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 16805 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IannotatedTree,_x2IannotatedTree) {-# LINE 16811 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IoriginalTree,_x2IoriginalTree) {-# LINE 16817 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16823 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16829 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16835 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16841 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16847 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16853 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16859 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16865 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _x1IannotatedTree,_x1IoriginalTree,_x1IupTypes) = x1_ _x1OassignmentCastContext _x1Ocat _x1OdownEnv _x1OexpectedCast _x1OexpectedTypes _x1Oflags _x1OimCast ( _x2IannotatedTree,_x2IoriginalTree) = x2_ _x2Ocat _x2Oflags _x2OimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExprListStatementListTripleList ----------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprListStatementListTripleList originalTree : ScalarExprListStatementListTripleList alternatives: alternative Cons: child hd : ScalarExprListStatementListTriple child tl : ScalarExprListStatementListTripleList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprListStatementListTripleList = [ScalarExprListStatementListTriple] -- cata _sem_ScalarExprListStatementListTripleList :: ScalarExprListStatementListTripleList -> T_ScalarExprListStatementListTripleList _sem_ScalarExprListStatementListTripleList list = (Prelude.foldr _sem_ScalarExprListStatementListTripleList_Cons _sem_ScalarExprListStatementListTripleList_Nil (Prelude.map _sem_ScalarExprListStatementListTriple list)) -- semantic domain type T_ScalarExprListStatementListTripleList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprListStatementListTripleList,ScalarExprListStatementListTripleList) data Inh_ScalarExprListStatementListTripleList = Inh_ScalarExprListStatementListTripleList {_cat_Inh_ScalarExprListStatementListTripleList :: Catalog,_flags_Inh_ScalarExprListStatementListTripleList :: TypeCheckFlags,_imCast_Inh_ScalarExprListStatementListTripleList :: (Maybe TypeExtra)} data Syn_ScalarExprListStatementListTripleList = Syn_ScalarExprListStatementListTripleList {_annotatedTree_Syn_ScalarExprListStatementListTripleList :: ScalarExprListStatementListTripleList,_originalTree_Syn_ScalarExprListStatementListTripleList :: ScalarExprListStatementListTripleList} _wrap_ScalarExprListStatementListTripleList :: T_ScalarExprListStatementListTripleList -> Inh_ScalarExprListStatementListTripleList -> Syn_ScalarExprListStatementListTripleList _wrap_ScalarExprListStatementListTripleList sem (Inh_ScalarExprListStatementListTripleList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_ScalarExprListStatementListTripleList _lhsOannotatedTree _lhsOoriginalTree)) _sem_ScalarExprListStatementListTripleList_Cons :: T_ScalarExprListStatementListTriple -> T_ScalarExprListStatementListTripleList -> T_ScalarExprListStatementListTripleList _sem_ScalarExprListStatementListTripleList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ScalarExprListStatementListTripleList _lhsOoriginalTree :: ScalarExprListStatementListTripleList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: ScalarExprListStatementListTriple _hdIoriginalTree :: ScalarExprListStatementListTriple _tlIannotatedTree :: ScalarExprListStatementListTripleList _tlIoriginalTree :: ScalarExprListStatementListTripleList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 16936 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 16942 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 16948 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 16954 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16960 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16966 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16972 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 16978 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 16984 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 16990 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_ScalarExprListStatementListTripleList_Nil :: T_ScalarExprListStatementListTripleList _sem_ScalarExprListStatementListTripleList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ScalarExprListStatementListTripleList _lhsOoriginalTree :: ScalarExprListStatementListTripleList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 17008 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 17014 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17020 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17026 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExprRoot ---------------------------------------------- {- visit 0: inherited attributes: cat : Catalog downEnv : Environment flags : TypeCheckFlags synthesized attributes: annotatedTree : ScalarExprRoot originalTree : ScalarExprRoot alternatives: alternative ScalarExprRoot: child expr : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ -} data ScalarExprRoot = ScalarExprRoot (ScalarExpr) deriving ( Show) -- cata _sem_ScalarExprRoot :: ScalarExprRoot -> T_ScalarExprRoot _sem_ScalarExprRoot (ScalarExprRoot _expr) = (_sem_ScalarExprRoot_ScalarExprRoot (_sem_ScalarExpr _expr)) -- semantic domain type T_ScalarExprRoot = Catalog -> Environment -> TypeCheckFlags -> ( ScalarExprRoot,ScalarExprRoot) data Inh_ScalarExprRoot = Inh_ScalarExprRoot {_cat_Inh_ScalarExprRoot :: Catalog,_downEnv_Inh_ScalarExprRoot :: Environment,_flags_Inh_ScalarExprRoot :: TypeCheckFlags} data Syn_ScalarExprRoot = Syn_ScalarExprRoot {_annotatedTree_Syn_ScalarExprRoot :: ScalarExprRoot,_originalTree_Syn_ScalarExprRoot :: ScalarExprRoot} _wrap_ScalarExprRoot :: T_ScalarExprRoot -> Inh_ScalarExprRoot -> Syn_ScalarExprRoot _wrap_ScalarExprRoot sem (Inh_ScalarExprRoot _lhsIcat _lhsIdownEnv _lhsIflags) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIdownEnv _lhsIflags in (Syn_ScalarExprRoot _lhsOannotatedTree _lhsOoriginalTree)) _sem_ScalarExprRoot_ScalarExprRoot :: T_ScalarExpr -> T_ScalarExprRoot _sem_ScalarExprRoot_ScalarExprRoot expr_ = (\ _lhsIcat _lhsIdownEnv _lhsIflags -> (let _exprOexpectedCast :: Bool _exprOodbcFunction :: Bool _exprOdownEnv :: Environment _exprOexpectedType :: (Maybe TypeExtra) _exprOassignmentCastContext :: Bool _exprOimCast :: (Maybe TypeExtra) _lhsOannotatedTree :: ScalarExprRoot _lhsOoriginalTree :: ScalarExprRoot _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 96, column 37) _exprOexpectedCast = ({-# LINE 96 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 17090 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 158, column 22) _exprOodbcFunction = ({-# LINE 158 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 17096 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 236, column 9) _exprOdownEnv = ({-# LINE 236 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 17102 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 740, column 20) _exprOexpectedType = ({-# LINE 740 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} Nothing {-# LINE 17108 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 819, column 37) _exprOassignmentCastContext = ({-# LINE 819 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 17114 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag"(line 136, column 8) _exprOimCast = ({-# LINE 136 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Nothing {-# LINE 17120 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ScalarExprRoot _exprIannotatedTree {-# LINE 17126 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ScalarExprRoot _exprIoriginalTree {-# LINE 17132 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17138 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17144 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17150 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17156 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExprStatementListPair --------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprStatementListPair originalTree : ScalarExprStatementListPair alternatives: alternative Tuple: child x1 : ScalarExpr child x2 : StatementList visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprStatementListPair = ( ScalarExpr,StatementList) -- cata _sem_ScalarExprStatementListPair :: ScalarExprStatementListPair -> T_ScalarExprStatementListPair _sem_ScalarExprStatementListPair ( x1,x2) = (_sem_ScalarExprStatementListPair_Tuple (_sem_ScalarExpr x1) (_sem_StatementList x2)) -- semantic domain type T_ScalarExprStatementListPair = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprStatementListPair,ScalarExprStatementListPair) data Inh_ScalarExprStatementListPair = Inh_ScalarExprStatementListPair {_cat_Inh_ScalarExprStatementListPair :: Catalog,_flags_Inh_ScalarExprStatementListPair :: TypeCheckFlags,_imCast_Inh_ScalarExprStatementListPair :: (Maybe TypeExtra)} data Syn_ScalarExprStatementListPair = Syn_ScalarExprStatementListPair {_annotatedTree_Syn_ScalarExprStatementListPair :: ScalarExprStatementListPair,_originalTree_Syn_ScalarExprStatementListPair :: ScalarExprStatementListPair} _wrap_ScalarExprStatementListPair :: T_ScalarExprStatementListPair -> Inh_ScalarExprStatementListPair -> Syn_ScalarExprStatementListPair _wrap_ScalarExprStatementListPair sem (Inh_ScalarExprStatementListPair _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_ScalarExprStatementListPair _lhsOannotatedTree _lhsOoriginalTree)) _sem_ScalarExprStatementListPair_Tuple :: T_ScalarExpr -> T_StatementList -> T_ScalarExprStatementListPair _sem_ScalarExprStatementListPair_Tuple x1_ x2_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _x1OdownEnv :: Environment _x1OexpectedCast :: Bool _x1OexpectedType :: (Maybe TypeExtra) _x1OodbcFunction :: Bool _x1OassignmentCastContext :: Bool _lhsOannotatedTree :: ScalarExprStatementListPair _lhsOoriginalTree :: ScalarExprStatementListPair _x1Ocat :: Catalog _x1Oflags :: TypeCheckFlags _x1OimCast :: (Maybe TypeExtra) _x2Ocat :: Catalog _x2Oflags :: TypeCheckFlags _x2OimCast :: (Maybe TypeExtra) _x1IannotatedTree :: ScalarExpr _x1IcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _x1IoriginalTree :: ScalarExpr _x1IupType :: (Maybe TypeExtra) _x2IannotatedTree :: StatementList _x2IoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 97, column 41) _x1OdownEnv = ({-# LINE 97 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 17228 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 98, column 41) _x1OexpectedCast = ({-# LINE 98 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 17234 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 99, column 41) _x1OexpectedType = ({-# LINE 99 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 17240 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 100, column 41) _x1OodbcFunction = ({-# LINE 100 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 17246 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 820, column 41) _x1OassignmentCastContext = ({-# LINE 820 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 17252 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IannotatedTree,_x2IannotatedTree) {-# LINE 17258 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (_x1IoriginalTree,_x2IoriginalTree) {-# LINE 17264 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17270 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17276 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17282 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17288 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17294 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17300 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17306 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _x2OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17312 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _x1IannotatedTree,_x1IcolExprs,_x1IoriginalTree,_x1IupType) = x1_ _x1OassignmentCastContext _x1Ocat _x1OdownEnv _x1OexpectedCast _x1OexpectedType _x1Oflags _x1OimCast _x1OodbcFunction ( _x2IannotatedTree,_x2IoriginalTree) = x2_ _x2Ocat _x2Oflags _x2OimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExprStatementListPairList ----------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprStatementListPairList originalTree : ScalarExprStatementListPairList alternatives: alternative Cons: child hd : ScalarExprStatementListPair child tl : ScalarExprStatementListPairList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprStatementListPairList = [ScalarExprStatementListPair] -- cata _sem_ScalarExprStatementListPairList :: ScalarExprStatementListPairList -> T_ScalarExprStatementListPairList _sem_ScalarExprStatementListPairList list = (Prelude.foldr _sem_ScalarExprStatementListPairList_Cons _sem_ScalarExprStatementListPairList_Nil (Prelude.map _sem_ScalarExprStatementListPair list)) -- semantic domain type T_ScalarExprStatementListPairList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprStatementListPairList,ScalarExprStatementListPairList) data Inh_ScalarExprStatementListPairList = Inh_ScalarExprStatementListPairList {_cat_Inh_ScalarExprStatementListPairList :: Catalog,_flags_Inh_ScalarExprStatementListPairList :: TypeCheckFlags,_imCast_Inh_ScalarExprStatementListPairList :: (Maybe TypeExtra)} data Syn_ScalarExprStatementListPairList = Syn_ScalarExprStatementListPairList {_annotatedTree_Syn_ScalarExprStatementListPairList :: ScalarExprStatementListPairList,_originalTree_Syn_ScalarExprStatementListPairList :: ScalarExprStatementListPairList} _wrap_ScalarExprStatementListPairList :: T_ScalarExprStatementListPairList -> Inh_ScalarExprStatementListPairList -> Syn_ScalarExprStatementListPairList _wrap_ScalarExprStatementListPairList sem (Inh_ScalarExprStatementListPairList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_ScalarExprStatementListPairList _lhsOannotatedTree _lhsOoriginalTree)) _sem_ScalarExprStatementListPairList_Cons :: T_ScalarExprStatementListPair -> T_ScalarExprStatementListPairList -> T_ScalarExprStatementListPairList _sem_ScalarExprStatementListPairList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ScalarExprStatementListPairList _lhsOoriginalTree :: ScalarExprStatementListPairList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: ScalarExprStatementListPair _hdIoriginalTree :: ScalarExprStatementListPair _tlIannotatedTree :: ScalarExprStatementListPairList _tlIoriginalTree :: ScalarExprStatementListPairList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 17383 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 17389 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17395 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17401 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17407 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17413 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17419 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17425 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17431 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17437 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_ScalarExprStatementListPairList_Nil :: T_ScalarExprStatementListPairList _sem_ScalarExprStatementListPairList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: ScalarExprStatementListPairList _lhsOoriginalTree :: ScalarExprStatementListPairList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 17455 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 17461 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17467 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17473 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- ScalarExprTransposedList ------------------------------------ {- visit 0: inherited attributes: cat : Catalog expectedCast : Bool expectedType : Maybe [TypeExtra] flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : ScalarExprTransposedList originalTree : ScalarExprTransposedList upType : Maybe [TypeExtra] alternatives: alternative Cons: child hd : ScalarExpr child tl : ScalarExprTransposedList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type ScalarExprTransposedList = [ScalarExpr] -- cata _sem_ScalarExprTransposedList :: ScalarExprTransposedList -> T_ScalarExprTransposedList _sem_ScalarExprTransposedList list = (Prelude.foldr _sem_ScalarExprTransposedList_Cons _sem_ScalarExprTransposedList_Nil (Prelude.map _sem_ScalarExpr list)) -- semantic domain type T_ScalarExprTransposedList = Catalog -> Bool -> (Maybe [TypeExtra]) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( ScalarExprTransposedList,ScalarExprTransposedList,(Maybe [TypeExtra])) data Inh_ScalarExprTransposedList = Inh_ScalarExprTransposedList {_cat_Inh_ScalarExprTransposedList :: Catalog,_expectedCast_Inh_ScalarExprTransposedList :: Bool,_expectedType_Inh_ScalarExprTransposedList :: (Maybe [TypeExtra]),_flags_Inh_ScalarExprTransposedList :: TypeCheckFlags,_imCast_Inh_ScalarExprTransposedList :: (Maybe TypeExtra)} data Syn_ScalarExprTransposedList = Syn_ScalarExprTransposedList {_annotatedTree_Syn_ScalarExprTransposedList :: ScalarExprTransposedList,_originalTree_Syn_ScalarExprTransposedList :: ScalarExprTransposedList,_upType_Syn_ScalarExprTransposedList :: (Maybe [TypeExtra])} _wrap_ScalarExprTransposedList :: T_ScalarExprTransposedList -> Inh_ScalarExprTransposedList -> Syn_ScalarExprTransposedList _wrap_ScalarExprTransposedList sem (Inh_ScalarExprTransposedList _lhsIcat _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType) = sem _lhsIcat _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast in (Syn_ScalarExprTransposedList _lhsOannotatedTree _lhsOoriginalTree _lhsOupType)) _sem_ScalarExprTransposedList_Cons :: T_ScalarExpr -> T_ScalarExprTransposedList -> T_ScalarExprTransposedList _sem_ScalarExprTransposedList_Cons hd_ tl_ = (\ _lhsIcat _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _hdOdownEnv :: Environment _lhsOupType :: (Maybe [TypeExtra]) _hdOexpectedType :: (Maybe TypeExtra) _tlOexpectedType :: (Maybe [TypeExtra]) _hdOexpectedCast :: Bool _tlOexpectedCast :: Bool _hdOodbcFunction :: Bool _hdOassignmentCastContext :: Bool _lhsOannotatedTree :: ScalarExprTransposedList _lhsOoriginalTree :: ScalarExprTransposedList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: ScalarExpr _hdIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _hdIoriginalTree :: ScalarExpr _hdIupType :: (Maybe TypeExtra) _tlIannotatedTree :: ScalarExprTransposedList _tlIoriginalTree :: ScalarExprTransposedList _tlIupType :: (Maybe [TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 101, column 37) _hdOdownEnv = ({-# LINE 101 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 17558 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 174, column 9) _lhsOupType = ({-# LINE 174 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM2 (:) _hdIupType _tlIupType {-# LINE 17564 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 175, column 9) _hdOexpectedType = ({-# LINE 175 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM fst $ splitTypeExtraList _lhsIexpectedType {-# LINE 17570 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 176, column 9) _tlOexpectedType = ({-# LINE 176 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM snd $ splitTypeExtraList _lhsIexpectedType {-# LINE 17576 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 177, column 9) _hdOexpectedCast = ({-# LINE 177 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedCast {-# LINE 17582 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 178, column 9) _tlOexpectedCast = ({-# LINE 178 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIexpectedCast {-# LINE 17588 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 162, column 12) _hdOodbcFunction = ({-# LINE 162 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 17594 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 821, column 37) _hdOassignmentCastContext = ({-# LINE 821 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 17600 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 17606 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 17612 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17618 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17624 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17630 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17636 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17642 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17648 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17654 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17660 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIcolExprs,_hdIoriginalTree,_hdIupType) = hd_ _hdOassignmentCastContext _hdOcat _hdOdownEnv _hdOexpectedCast _hdOexpectedType _hdOflags _hdOimCast _hdOodbcFunction ( _tlIannotatedTree,_tlIoriginalTree,_tlIupType) = tl_ _tlOcat _tlOexpectedCast _tlOexpectedType _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) _sem_ScalarExprTransposedList_Nil :: T_ScalarExprTransposedList _sem_ScalarExprTransposedList_Nil = (\ _lhsIcat _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOupType :: (Maybe [TypeExtra]) _lhsOannotatedTree :: ScalarExprTransposedList _lhsOoriginalTree :: ScalarExprTransposedList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 180, column 9) _lhsOupType = ({-# LINE 180 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Just [] {-# LINE 17681 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 17687 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 17693 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17699 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17705 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupType))) -- SelectItem -------------------------------------------------- {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog downEnv : Environment expectedCast : Bool expectedType : Maybe TypeExtra flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : SelectItem colExprs : [(NameComponent,Maybe TypeExtra,ScalarExpr)] originalTree : SelectItem alternatives: alternative SelExp: child ann : Annotation child ex : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative SelectItem: child ann : Annotation child ex : ScalarExpr child name : {NameComponent} visit 0: local annotatedTree : _ local originalTree : _ -} data SelectItem = SelExp (Annotation) (ScalarExpr) | SelectItem (Annotation) (ScalarExpr) (NameComponent) deriving ( Data,Eq,Show,Typeable) -- cata _sem_SelectItem :: SelectItem -> T_SelectItem _sem_SelectItem (SelExp _ann _ex) = (_sem_SelectItem_SelExp (_sem_Annotation _ann) (_sem_ScalarExpr _ex)) _sem_SelectItem (SelectItem _ann _ex _name) = (_sem_SelectItem_SelectItem (_sem_Annotation _ann) (_sem_ScalarExpr _ex) _name) -- semantic domain type T_SelectItem = Bool -> Catalog -> Environment -> Bool -> (Maybe TypeExtra) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( SelectItem,([(NameComponent,Maybe TypeExtra,ScalarExpr)]),SelectItem) data Inh_SelectItem = Inh_SelectItem {_assignmentCastContext_Inh_SelectItem :: Bool,_cat_Inh_SelectItem :: Catalog,_downEnv_Inh_SelectItem :: Environment,_expectedCast_Inh_SelectItem :: Bool,_expectedType_Inh_SelectItem :: (Maybe TypeExtra),_flags_Inh_SelectItem :: TypeCheckFlags,_imCast_Inh_SelectItem :: (Maybe TypeExtra)} data Syn_SelectItem = Syn_SelectItem {_annotatedTree_Syn_SelectItem :: SelectItem,_colExprs_Syn_SelectItem :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]),_originalTree_Syn_SelectItem :: SelectItem} _wrap_SelectItem :: T_SelectItem -> Inh_SelectItem -> Syn_SelectItem _wrap_SelectItem sem (Inh_SelectItem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree) = sem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast in (Syn_SelectItem _lhsOannotatedTree _lhsOcolExprs _lhsOoriginalTree)) _sem_SelectItem_SelExp :: T_Annotation -> T_ScalarExpr -> T_SelectItem _sem_SelectItem_SelExp ann_ ex_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: SelectItem _annOtpe :: (Either [TypeError] TypeExtra) _exOexpectedType :: (Maybe TypeExtra) _exOexpectedCast :: Bool _exOodbcFunction :: Bool _lhsOoriginalTree :: SelectItem _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exOassignmentCastContext :: Bool _exOcat :: Catalog _exOdownEnv :: Environment _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: ScalarExpr _exIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exIoriginalTree :: ScalarExpr _exIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 117, column 7) _lhsOannotatedTree = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} if tcfAddSelectItemAliases _lhsIflags then case _exIcolExprs of [(n,_,_)] -> SelectItem _annIannotatedTree _exIannotatedTree n _ -> _annotatedTree else _annotatedTree {-# LINE 17806 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 208, column 7) _annOtpe = ({-# LINE 208 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} Left [] {-# LINE 17812 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 209, column 7) _exOexpectedType = ({-# LINE 209 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedType {-# LINE 17818 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 210, column 7) _exOexpectedCast = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedCast {-# LINE 17824 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 165, column 25) _exOodbcFunction = ({-# LINE 165 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 17830 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SelExp _annIannotatedTree _exIannotatedTree {-# LINE 17836 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SelExp _annIoriginalTree _exIoriginalTree {-# LINE 17842 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17848 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOcolExprs = ({-# LINE 150 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _exIcolExprs {-# LINE 17854 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17860 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17866 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17872 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 17878 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 17884 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 17890 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 17896 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 17902 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIcolExprs,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOdownEnv _exOexpectedCast _exOexpectedType _exOflags _exOimCast _exOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree))) _sem_SelectItem_SelectItem :: T_Annotation -> T_ScalarExpr -> NameComponent -> T_SelectItem _sem_SelectItem_SelectItem ann_ ex_ name_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _annOtpe :: (Either [TypeError] TypeExtra) _exOexpectedType :: (Maybe TypeExtra) _exOexpectedCast :: Bool _exOodbcFunction :: Bool _lhsOannotatedTree :: SelectItem _lhsOoriginalTree :: SelectItem _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exOassignmentCastContext :: Bool _exOcat :: Catalog _exOdownEnv :: Environment _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: ScalarExpr _exIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exIoriginalTree :: ScalarExpr _exIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 112, column 7) _lhsOcolExprs = ({-# LINE 112 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} case _exIcolExprs of [(_,t,e)] -> [(name_, t,e)] x -> x {-# LINE 17948 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 208, column 7) _annOtpe = ({-# LINE 208 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} Left [] {-# LINE 17954 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 209, column 7) _exOexpectedType = ({-# LINE 209 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedType {-# LINE 17960 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 210, column 7) _exOexpectedCast = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedCast {-# LINE 17966 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 165, column 25) _exOodbcFunction = ({-# LINE 165 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 17972 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SelectItem _annIannotatedTree _exIannotatedTree name_ {-# LINE 17978 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SelectItem _annIoriginalTree _exIoriginalTree name_ {-# LINE 17984 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 17990 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 17996 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18002 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18008 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18014 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 18020 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18026 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOdownEnv = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIdownEnv {-# LINE 18032 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18038 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18044 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIcolExprs,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOdownEnv _exOexpectedCast _exOexpectedType _exOflags _exOimCast _exOodbcFunction in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree))) -- SelectItemList ---------------------------------------------- {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog downEnv : Environment expectedCast : Bool expectedType : Maybe [TypeExtra] flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : SelectItemList colExprs : [(NameComponent,Maybe TypeExtra,ScalarExpr)] originalTree : SelectItemList upEnv : Environment upType : Maybe [(Text,TypeExtra)] alternatives: alternative Cons: child hd : SelectItem child tl : SelectItemList visit 0: local colExprs : _ local upType : _ local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local upType : _ local annotatedTree : _ local originalTree : _ -} type SelectItemList = [SelectItem] -- cata _sem_SelectItemList :: SelectItemList -> T_SelectItemList _sem_SelectItemList list = (Prelude.foldr _sem_SelectItemList_Cons _sem_SelectItemList_Nil (Prelude.map _sem_SelectItem list)) -- semantic domain type T_SelectItemList = Bool -> Catalog -> Environment -> Bool -> (Maybe [TypeExtra]) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( SelectItemList,([(NameComponent,Maybe TypeExtra,ScalarExpr)]),SelectItemList,Environment,(Maybe [(Text,TypeExtra)])) data Inh_SelectItemList = Inh_SelectItemList {_assignmentCastContext_Inh_SelectItemList :: Bool,_cat_Inh_SelectItemList :: Catalog,_downEnv_Inh_SelectItemList :: Environment,_expectedCast_Inh_SelectItemList :: Bool,_expectedType_Inh_SelectItemList :: (Maybe [TypeExtra]),_flags_Inh_SelectItemList :: TypeCheckFlags,_imCast_Inh_SelectItemList :: (Maybe TypeExtra)} data Syn_SelectItemList = Syn_SelectItemList {_annotatedTree_Syn_SelectItemList :: SelectItemList,_colExprs_Syn_SelectItemList :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]),_originalTree_Syn_SelectItemList :: SelectItemList,_upEnv_Syn_SelectItemList :: Environment,_upType_Syn_SelectItemList :: (Maybe [(Text,TypeExtra)])} _wrap_SelectItemList :: T_SelectItemList -> Inh_SelectItemList -> Syn_SelectItemList _wrap_SelectItemList sem (Inh_SelectItemList _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupEnv,_lhsOupType) = sem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast in (Syn_SelectItemList _lhsOannotatedTree _lhsOcolExprs _lhsOoriginalTree _lhsOupEnv _lhsOupType)) _sem_SelectItemList_Cons :: T_SelectItem -> T_SelectItemList -> T_SelectItemList _sem_SelectItemList_Cons hd_ tl_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: SelectItemList _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _hdOexpectedType :: (Maybe TypeExtra) _tlOexpectedType :: (Maybe [TypeExtra]) _hdOexpectedCast :: Bool _tlOexpectedCast :: Bool _lhsOupType :: (Maybe [(Text,TypeExtra)]) _lhsOupEnv :: Environment _lhsOoriginalTree :: SelectItemList _hdOassignmentCastContext :: Bool _hdOcat :: Catalog _hdOdownEnv :: Environment _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOassignmentCastContext :: Bool _tlOcat :: Catalog _tlOdownEnv :: Environment _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: SelectItem _hdIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _hdIoriginalTree :: SelectItem _tlIannotatedTree :: SelectItemList _tlIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _tlIoriginalTree :: SelectItemList _tlIupEnv :: Environment _tlIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 132, column 10) _lhsOannotatedTree = ({-# LINE 132 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} if tcfExpandStars _lhsIflags then flip map _colExprs $ \(n,_t,e) -> if ncStr n == ncStr (columnName e) && not (tcfAddSelectItemAliases _lhsIflags) then SelExp emptyAnnotation e else SelectItem emptyAnnotation e n else _annotatedTree {-# LINE 18153 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 177, column 9) _colExprs = ({-# LINE 177 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _hdIcolExprs ++ _tlIcolExprs {-# LINE 18159 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 178, column 9) _lhsOcolExprs = ({-# LINE 178 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _colExprs {-# LINE 18165 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 179, column 9) _upType = ({-# LINE 179 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} sequence $ flip map _colExprs $ \(n,t,_) -> fmap (ncStrT n,) t {-# LINE 18172 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 181, column 9) _hdOexpectedType = ({-# LINE 181 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} liftM fst $ splitTypeExtraList _lhsIexpectedType {-# LINE 18178 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 182, column 9) _tlOexpectedType = ({-# LINE 182 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} liftM snd $ splitTypeExtraList _lhsIexpectedType {-# LINE 18184 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 183, column 9) _hdOexpectedCast = ({-# LINE 183 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedCast {-# LINE 18190 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 184, column 9) _tlOexpectedCast = ({-# LINE 184 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedCast {-# LINE 18196 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 186, column 7) _lhsOupType = ({-# LINE 186 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _upType {-# LINE 18202 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 187, column 7) _lhsOupEnv = ({-# LINE 187 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} case fmap E.envSelectListEnvironment _upType of (Just (Right e)) -> e _ -> E.brokeEnvironment {-# LINE 18210 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 18216 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 18222 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 18228 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 18234 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18240 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOdownEnv = ({-# LINE 151 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIdownEnv {-# LINE 18246 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18252 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18258 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 18264 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18270 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOdownEnv = ({-# LINE 156 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIdownEnv {-# LINE 18276 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18282 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18288 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIcolExprs,_hdIoriginalTree) = hd_ _hdOassignmentCastContext _hdOcat _hdOdownEnv _hdOexpectedCast _hdOexpectedType _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIcolExprs,_tlIoriginalTree,_tlIupEnv,_tlIupType) = tl_ _tlOassignmentCastContext _tlOcat _tlOdownEnv _tlOexpectedCast _tlOexpectedType _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupEnv,_lhsOupType))) _sem_SelectItemList_Nil :: T_SelectItemList _sem_SelectItemList_Nil = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: SelectItemList _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _lhsOupType :: (Maybe [(Text,TypeExtra)]) _lhsOupEnv :: Environment _lhsOoriginalTree :: SelectItemList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 131, column 9) _lhsOannotatedTree = ({-# LINE 131 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} [] {-# LINE 18313 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 174, column 9) _lhsOcolExprs = ({-# LINE 174 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} [] {-# LINE 18319 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 175, column 9) _upType = ({-# LINE 175 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} Nothing {-# LINE 18325 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 186, column 7) _lhsOupType = ({-# LINE 186 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _upType {-# LINE 18331 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 187, column 7) _lhsOupEnv = ({-# LINE 187 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} case fmap E.envSelectListEnvironment _upType of (Just (Right e)) -> e _ -> E.brokeEnvironment {-# LINE 18339 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 18345 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 18351 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 18357 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupEnv,_lhsOupType))) -- SelectList -------------------------------------------------- {- visit 0: inherited attributes: assignmentCastContext : Bool cat : Catalog downEnv : Environment expectedCast : Bool expectedType : Maybe [TypeExtra] flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : SelectList colExprs : [(NameComponent,Maybe TypeExtra,ScalarExpr)] originalTree : SelectList upEnv : Environment upType : Maybe [(Text,TypeExtra)] alternatives: alternative SelectList: child ann : Annotation child items : SelectItemList visit 0: local annotatedTree : _ local originalTree : _ -} data SelectList = SelectList (Annotation) (SelectItemList) deriving ( Data,Eq,Show,Typeable) -- cata _sem_SelectList :: SelectList -> T_SelectList _sem_SelectList (SelectList _ann _items) = (_sem_SelectList_SelectList (_sem_Annotation _ann) (_sem_SelectItemList _items)) -- semantic domain type T_SelectList = Bool -> Catalog -> Environment -> Bool -> (Maybe [TypeExtra]) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( SelectList,([(NameComponent,Maybe TypeExtra,ScalarExpr)]),SelectList,Environment,(Maybe [(Text,TypeExtra)])) data Inh_SelectList = Inh_SelectList {_assignmentCastContext_Inh_SelectList :: Bool,_cat_Inh_SelectList :: Catalog,_downEnv_Inh_SelectList :: Environment,_expectedCast_Inh_SelectList :: Bool,_expectedType_Inh_SelectList :: (Maybe [TypeExtra]),_flags_Inh_SelectList :: TypeCheckFlags,_imCast_Inh_SelectList :: (Maybe TypeExtra)} data Syn_SelectList = Syn_SelectList {_annotatedTree_Syn_SelectList :: SelectList,_colExprs_Syn_SelectList :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]),_originalTree_Syn_SelectList :: SelectList,_upEnv_Syn_SelectList :: Environment,_upType_Syn_SelectList :: (Maybe [(Text,TypeExtra)])} _wrap_SelectList :: T_SelectList -> Inh_SelectList -> Syn_SelectList _wrap_SelectList sem (Inh_SelectList _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupEnv,_lhsOupType) = sem _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast in (Syn_SelectList _lhsOannotatedTree _lhsOcolExprs _lhsOoriginalTree _lhsOupEnv _lhsOupType)) _sem_SelectList_SelectList :: T_Annotation -> T_SelectItemList -> T_SelectList _sem_SelectList_SelectList ann_ items_ = (\ _lhsIassignmentCastContext _lhsIcat _lhsIdownEnv _lhsIexpectedCast _lhsIexpectedType _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _itemsOexpectedCast :: Bool _lhsOannotatedTree :: SelectList _lhsOoriginalTree :: SelectList _lhsOcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _lhsOupEnv :: Environment _lhsOupType :: (Maybe [(Text,TypeExtra)]) _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _itemsOassignmentCastContext :: Bool _itemsOcat :: Catalog _itemsOdownEnv :: Environment _itemsOexpectedType :: (Maybe [TypeExtra]) _itemsOflags :: TypeCheckFlags _itemsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _itemsIannotatedTree :: SelectItemList _itemsIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _itemsIoriginalTree :: SelectItemList _itemsIupEnv :: Environment _itemsIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 204, column 7) _annOtpe = ({-# LINE 204 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} Left [] {-# LINE 18447 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag"(line 205, column 7) _itemsOexpectedCast = ({-# LINE 205 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} True {-# LINE 18453 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SelectList _annIannotatedTree _itemsIannotatedTree {-# LINE 18459 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SelectList _annIoriginalTree _itemsIoriginalTree {-# LINE 18465 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 18471 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 18477 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOcolExprs = ({-# LINE 157 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _itemsIcolExprs {-# LINE 18483 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOupEnv = ({-# LINE 161 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _itemsIupEnv {-# LINE 18489 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOupType = ({-# LINE 158 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _itemsIupType {-# LINE 18495 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18501 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18507 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18513 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _itemsOassignmentCastContext = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} _lhsIassignmentCastContext {-# LINE 18519 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _itemsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18525 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _itemsOdownEnv = ({-# LINE 156 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIdownEnv {-# LINE 18531 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _itemsOexpectedType = ({-# LINE 159 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/SelectLists.ag" #-} _lhsIexpectedType {-# LINE 18537 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _itemsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18543 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _itemsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18549 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _itemsIannotatedTree,_itemsIcolExprs,_itemsIoriginalTree,_itemsIupEnv,_itemsIupType) = items_ _itemsOassignmentCastContext _itemsOcat _itemsOdownEnv _itemsOexpectedCast _itemsOexpectedType _itemsOflags _itemsOimCast in ( _lhsOannotatedTree,_lhsOcolExprs,_lhsOoriginalTree,_lhsOupEnv,_lhsOupType))) -- SetClause --------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : SetClause originalTree : SetClause alternatives: alternative SetClause: child ann : Annotation child setTarget : {NameComponent} child ex : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative MultiSetClause: child ann : Annotation child setTargets : {[NameComponent]} child ex : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ -} data SetClause = SetClause (Annotation) (NameComponent) (ScalarExpr) | MultiSetClause (Annotation) (([NameComponent])) (ScalarExpr) deriving ( Data,Eq,Show,Typeable) -- cata _sem_SetClause :: SetClause -> T_SetClause _sem_SetClause (SetClause _ann _setTarget _ex) = (_sem_SetClause_SetClause (_sem_Annotation _ann) _setTarget (_sem_ScalarExpr _ex)) _sem_SetClause (MultiSetClause _ann _setTargets _ex) = (_sem_SetClause_MultiSetClause (_sem_Annotation _ann) _setTargets (_sem_ScalarExpr _ex)) -- semantic domain type T_SetClause = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( SetClause,SetClause) data Inh_SetClause = Inh_SetClause {_cat_Inh_SetClause :: Catalog,_flags_Inh_SetClause :: TypeCheckFlags,_imCast_Inh_SetClause :: (Maybe TypeExtra)} data Syn_SetClause = Syn_SetClause {_annotatedTree_Syn_SetClause :: SetClause,_originalTree_Syn_SetClause :: SetClause} _wrap_SetClause :: T_SetClause -> Inh_SetClause -> Syn_SetClause _wrap_SetClause sem (Inh_SetClause _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_SetClause _lhsOannotatedTree _lhsOoriginalTree)) _sem_SetClause_SetClause :: T_Annotation -> NameComponent -> T_ScalarExpr -> T_SetClause _sem_SetClause_SetClause ann_ setTarget_ ex_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exOdownEnv :: Environment _exOexpectedCast :: Bool _exOexpectedType :: (Maybe TypeExtra) _exOodbcFunction :: Bool _exOassignmentCastContext :: Bool _lhsOannotatedTree :: SetClause _lhsOoriginalTree :: SetClause _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exOcat :: Catalog _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: ScalarExpr _exIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exIoriginalTree :: ScalarExpr _exIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 106, column 27) _annOtpe = ({-# LINE 106 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 18637 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 107, column 27) _exOdownEnv = ({-# LINE 107 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 18643 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 108, column 27) _exOexpectedCast = ({-# LINE 108 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 18649 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 109, column 27) _exOexpectedType = ({-# LINE 109 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 18655 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 168, column 32) _exOodbcFunction = ({-# LINE 168 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 18661 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 823, column 27) _exOassignmentCastContext = ({-# LINE 823 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 18667 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetClause _annIannotatedTree setTarget_ _exIannotatedTree {-# LINE 18673 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetClause _annIoriginalTree setTarget_ _exIoriginalTree {-# LINE 18679 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 18685 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 18691 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18697 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18703 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18709 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18715 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18721 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18727 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIcolExprs,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOdownEnv _exOexpectedCast _exOexpectedType _exOflags _exOimCast _exOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_SetClause_MultiSetClause :: T_Annotation -> ([NameComponent]) -> T_ScalarExpr -> T_SetClause _sem_SetClause_MultiSetClause ann_ setTargets_ ex_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exOdownEnv :: Environment _exOexpectedCast :: Bool _exOexpectedType :: (Maybe TypeExtra) _exOodbcFunction :: Bool _exOassignmentCastContext :: Bool _lhsOannotatedTree :: SetClause _lhsOoriginalTree :: SetClause _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exOcat :: Catalog _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: ScalarExpr _exIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exIoriginalTree :: ScalarExpr _exIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 102, column 32) _annOtpe = ({-# LINE 102 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 18766 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 103, column 32) _exOdownEnv = ({-# LINE 103 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 18772 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 104, column 32) _exOexpectedCast = ({-# LINE 104 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 18778 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 105, column 32) _exOexpectedType = ({-# LINE 105 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 18784 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 168, column 32) _exOodbcFunction = ({-# LINE 168 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 18790 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 822, column 32) _exOassignmentCastContext = ({-# LINE 822 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 18796 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} MultiSetClause _annIannotatedTree setTargets_ _exIannotatedTree {-# LINE 18802 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} MultiSetClause _annIoriginalTree setTargets_ _exIoriginalTree {-# LINE 18808 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 18814 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 18820 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18826 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18832 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18838 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18844 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18850 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18856 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIcolExprs,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOdownEnv _exOexpectedCast _exOexpectedType _exOflags _exOimCast _exOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- SetClauseList ----------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : SetClauseList originalTree : SetClauseList alternatives: alternative Cons: child hd : SetClause child tl : SetClauseList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type SetClauseList = [SetClause] -- cata _sem_SetClauseList :: SetClauseList -> T_SetClauseList _sem_SetClauseList list = (Prelude.foldr _sem_SetClauseList_Cons _sem_SetClauseList_Nil (Prelude.map _sem_SetClause list)) -- semantic domain type T_SetClauseList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( SetClauseList,SetClauseList) data Inh_SetClauseList = Inh_SetClauseList {_cat_Inh_SetClauseList :: Catalog,_flags_Inh_SetClauseList :: TypeCheckFlags,_imCast_Inh_SetClauseList :: (Maybe TypeExtra)} data Syn_SetClauseList = Syn_SetClauseList {_annotatedTree_Syn_SetClauseList :: SetClauseList,_originalTree_Syn_SetClauseList :: SetClauseList} _wrap_SetClauseList :: T_SetClauseList -> Inh_SetClauseList -> Syn_SetClauseList _wrap_SetClauseList sem (Inh_SetClauseList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_SetClauseList _lhsOannotatedTree _lhsOoriginalTree)) _sem_SetClauseList_Cons :: T_SetClause -> T_SetClauseList -> T_SetClauseList _sem_SetClauseList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: SetClauseList _lhsOoriginalTree :: SetClauseList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: SetClause _hdIoriginalTree :: SetClause _tlIannotatedTree :: SetClauseList _tlIoriginalTree :: SetClauseList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 18927 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 18933 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 18939 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 18945 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18951 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18957 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18963 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 18969 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 18975 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 18981 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_SetClauseList_Nil :: T_SetClauseList _sem_SetClauseList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: SetClauseList _lhsOoriginalTree :: SetClauseList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 18999 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 19005 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 19011 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 19017 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- Statement --------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : Statement originalTree : Statement alternatives: alternative QueryStatement: child ann : Annotation child ex : QueryExpr visit 0: local annotatedTree : _ local originalTree : _ alternative Insert: child ann : Annotation child table : Name child targetCols : {[NameComponent]} child insData : QueryExpr child returning : MaybeSelectList visit 0: local tpe : {Either [TypeError] [TypeExtra]} local tooManyCols : {Maybe [TypeError]} local annotatedTree : _ local originalTree : _ alternative Update: child ann : Annotation child table : Name child assigns : SetClauseList child fromList : TableRefList child whr : MaybeBoolExpr child returning : MaybeSelectList visit 0: local annotatedTree : _ local originalTree : _ alternative Delete: child ann : Annotation child table : Name child using : TableRefList child whr : MaybeBoolExpr child returning : MaybeSelectList visit 0: local annotatedTree : _ local originalTree : _ alternative CopyFrom: child ann : Annotation child table : Name child targetCols : {[NameComponent]} child source : {CopyFromSource} child opts : {[CopyFromOption]} visit 0: local annotatedTree : _ local originalTree : _ alternative CopyData: child ann : Annotation child insData : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative CopyTo: child ann : Annotation child cp : {CopyToSource} child fn : {String} child opts : {[CopyToOption]} visit 0: local annotatedTree : _ local originalTree : _ alternative Truncate: child ann : Annotation child tables : {[Name]} child restartIdentity : {RestartIdentity} child cascade : {Cascade} visit 0: local annotatedTree : _ local originalTree : _ alternative CreateTable: child ann : Annotation child name : Name child atts : AttributeDefList child cons : ConstraintList child partition : MaybeTablePartitionDef child rep : {Replace} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterTable: child ann : Annotation child name : Name child operation : AlterTableOperation visit 0: local annotatedTree : _ local originalTree : _ alternative AlterDatabase: child ann : Annotation child name : Name child operation : AlterDatabaseOperation visit 0: local annotatedTree : _ local originalTree : _ alternative CreateSequence: child ann : Annotation child name : Name child incr : {Integer} child min : {Maybe Integer} child max : {Maybe Integer} child start : {Integer} child cache : {Integer} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSequence: child ann : Annotation child name : Name child operation : AlterSequenceOperation visit 0: local annotatedTree : _ local originalTree : _ alternative CreateTableAs: child ann : Annotation child name : Name child rep : {Replace} child expr : QueryExpr visit 0: local annotatedTree : _ local originalTree : _ alternative CreateView: child ann : Annotation child name : Name child colNames : {MaybeNameComponentList} child expr : QueryExpr visit 0: local annotatedTree : _ local originalTree : _ alternative AlterView: child ann : Annotation child name : Name child colNames : {MaybeNameComponentList} child expr : QueryExpr visit 0: local annotatedTree : _ local originalTree : _ alternative CreateType: child ann : Annotation child name : Name child atts : TypeAttributeDefList visit 0: local annotatedTree : _ local originalTree : _ alternative CreateUser: child ann : Annotation child name : Name child password : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative CreateLogin: child ann : Annotation child name : Name child password : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterUser: child ann : Annotation child name : Name child password : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterLogin: child ann : Annotation child name : Name child password : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative CreateSchema: child ann : Annotation child name : {NameComponent} child owner : {Maybe Name} visit 0: local annotatedTree : _ local originalTree : _ alternative AlterSchema: child ann : Annotation child name : {NameComponent} child operation : AlterSchemaOperation visit 0: local annotatedTree : _ local originalTree : _ alternative CreateFunction: child ann : Annotation child name : Name child params : ParamDefList child rettype : TypeName child rep : {Replace} child lang : {Language} child body : FnBody child vol : {Volatility} visit 0: local annotatedTree : _ local originalTree : _ alternative CreateDomain: child ann : Annotation child name : Name child typ : TypeName child constraintName : {String} child check : MaybeBoolExpr visit 0: local annotatedTree : _ local originalTree : _ alternative CreateLanguage: child ann : Annotation child name : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative CreateTrigger: child ann : Annotation child name : {NameComponent} child wh : {TriggerWhen} child events : {[TriggerEvent]} child tbl : Name child firing : {TriggerFire} child fnName : Name child fnArgs : ScalarExprList visit 0: local annotatedTree : _ local originalTree : _ alternative DropFunction: child ann : Annotation child ifE : {IfExists} child sigs : NameTypeNameListPairList child cascade : {Cascade} visit 0: local annotatedTree : _ local originalTree : _ alternative DropSomething: child ann : Annotation child dropType : {DropType} child ifE : {IfExists} child names : {[Name]} child cascade : {Cascade} visit 0: local annotatedTree : _ local originalTree : _ alternative DropTrigger: child ann : Annotation child ifE : {IfExists} child name : {NameComponent} child tbl : Name child cascade : {Cascade} visit 0: local annotatedTree : _ local originalTree : _ alternative CreateDatabase: child ann : Annotation child nm : Name visit 0: local annotatedTree : _ local originalTree : _ alternative Set: child ann : Annotation child name : {String} child values : {[SetValue]} visit 0: local annotatedTree : _ local originalTree : _ alternative Notify: child ann : Annotation child name : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative Into: child ann : Annotation child strict : {Bool} child into : {[Name]} child stmt : Statement visit 0: local annotatedTree : _ local originalTree : _ alternative Assignment: child ann : Annotation child target : Name child value : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative Return: child ann : Annotation child value : MaybeScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative ReturnNext: child ann : Annotation child expr : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative ReturnQuery: child ann : Annotation child sel : QueryExpr visit 0: local annotatedTree : _ local originalTree : _ alternative Raise: child ann : Annotation child level : {RaiseType} child message : {String} child args : ScalarExprList visit 0: local annotatedTree : _ local originalTree : _ alternative NullStatement: child ann : Annotation visit 0: local annotatedTree : _ local originalTree : _ alternative Perform: child ann : Annotation child expr : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative Execute: child ann : Annotation child expr : ScalarExpr visit 0: local annotatedTree : _ local originalTree : _ alternative ForQueryStatement: child ann : Annotation child lb : {Maybe String} child var : {NameComponent} child sel : QueryExpr child sts : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative ForIntegerStatement: child ann : Annotation child lb : {Maybe String} child var : {NameComponent} child from : ScalarExpr child to : ScalarExpr child sts : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative LoopStatement: child ann : Annotation child lb : {Maybe String} child sts : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative WhileStatement: child ann : Annotation child lb : {Maybe String} child expr : ScalarExpr child sts : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative ContinueStatement: child ann : Annotation child lb : {Maybe String} visit 0: local annotatedTree : _ local originalTree : _ alternative ExitStatement: child ann : Annotation child lb : {Maybe String} visit 0: local annotatedTree : _ local originalTree : _ alternative CaseStatementSimple: child ann : Annotation child val : ScalarExpr child cases : ScalarExprListStatementListTripleList child els : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative CaseStatement: child ann : Annotation child cases : ScalarExprListStatementListTripleList child els : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative If: child ann : Annotation child cases : ScalarExprStatementListPairList child els : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative Block: child ann : Annotation child lb : {Maybe String} child vars : VarDefList child sts : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative AntiStatement: child string : {String} visit 0: local annotatedTree : _ local originalTree : _ alternative DeclareStatement: child ann : Annotation child ds : {[(String,TypeName,Maybe ScalarExpr)]} visit 0: local annotatedTree : _ local originalTree : _ alternative ExecStatement: child ann : Annotation child spName : Name child args : ScalarExprList visit 0: local annotatedTree : _ local originalTree : _ alternative CreateIndexTSQL: child ann : Annotation child nm : {NameComponent} child obj : Name child cols : {[NameComponent]} visit 0: local annotatedTree : _ local originalTree : _ -} data Statement = QueryStatement (Annotation) (QueryExpr) | Insert (Annotation) (Name) (([NameComponent])) (QueryExpr) (MaybeSelectList) | Update (Annotation) (Name) (SetClauseList) (TableRefList) (MaybeBoolExpr) (MaybeSelectList) | Delete (Annotation) (Name) (TableRefList) (MaybeBoolExpr) (MaybeSelectList) | CopyFrom (Annotation) (Name) (([NameComponent])) (CopyFromSource) (([CopyFromOption])) | CopyData (Annotation) (String) | CopyTo (Annotation) (CopyToSource) (String) (([CopyToOption])) | Truncate (Annotation) (([Name])) (RestartIdentity) (Cascade) | CreateTable (Annotation) (Name) (AttributeDefList) (ConstraintList) (MaybeTablePartitionDef) (Replace) | AlterTable (Annotation) (Name) (AlterTableOperation) | AlterDatabase (Annotation) (Name) (AlterDatabaseOperation) | CreateSequence (Annotation) (Name) (Integer) ((Maybe Integer)) ((Maybe Integer)) (Integer) (Integer) | AlterSequence (Annotation) (Name) (AlterSequenceOperation) | CreateTableAs (Annotation) (Name) (Replace) (QueryExpr) | CreateView (Annotation) (Name) (MaybeNameComponentList) (QueryExpr) | AlterView (Annotation) (Name) (MaybeNameComponentList) (QueryExpr) | CreateType (Annotation) (Name) (TypeAttributeDefList) | CreateUser (Annotation) (Name) (String) | CreateLogin (Annotation) (Name) (String) | AlterUser (Annotation) (Name) (String) | AlterLogin (Annotation) (Name) (String) | CreateSchema (Annotation) (NameComponent) ((Maybe Name)) | AlterSchema (Annotation) (NameComponent) (AlterSchemaOperation) | CreateFunction (Annotation) (Name) (ParamDefList) (TypeName) (Replace) (Language) (FnBody) (Volatility) | CreateDomain (Annotation) (Name) (TypeName) (String) (MaybeBoolExpr) | CreateLanguage (Annotation) (String) | CreateTrigger (Annotation) (NameComponent) (TriggerWhen) (([TriggerEvent])) (Name) (TriggerFire) (Name) (ScalarExprList) | DropFunction (Annotation) (IfExists) (NameTypeNameListPairList) (Cascade) | DropSomething (Annotation) (DropType) (IfExists) (([Name])) (Cascade) | DropTrigger (Annotation) (IfExists) (NameComponent) (Name) (Cascade) | CreateDatabase (Annotation) (Name) | Set (Annotation) (String) (([SetValue])) | Notify (Annotation) (String) | Into (Annotation) (Bool) (([Name])) (Statement) | Assignment (Annotation) (Name) (ScalarExpr) | Return (Annotation) (MaybeScalarExpr) | ReturnNext (Annotation) (ScalarExpr) | ReturnQuery (Annotation) (QueryExpr) | Raise (Annotation) (RaiseType) (String) (ScalarExprList) | NullStatement (Annotation) | Perform (Annotation) (ScalarExpr) | Execute (Annotation) (ScalarExpr) | ForQueryStatement (Annotation) ((Maybe String)) (NameComponent) (QueryExpr) (StatementList) | ForIntegerStatement (Annotation) ((Maybe String)) (NameComponent) (ScalarExpr) (ScalarExpr) (StatementList) | LoopStatement (Annotation) ((Maybe String)) (StatementList) | WhileStatement (Annotation) ((Maybe String)) (ScalarExpr) (StatementList) | ContinueStatement (Annotation) ((Maybe String)) | ExitStatement (Annotation) ((Maybe String)) | CaseStatementSimple (Annotation) (ScalarExpr) (ScalarExprListStatementListTripleList) (StatementList) | CaseStatement (Annotation) (ScalarExprListStatementListTripleList) (StatementList) | If (Annotation) (ScalarExprStatementListPairList) (StatementList) | Block (Annotation) ((Maybe String)) (VarDefList) (StatementList) | AntiStatement (String) | DeclareStatement (Annotation) (([(String,TypeName,Maybe ScalarExpr)])) | ExecStatement (Annotation) (Name) (ScalarExprList) | CreateIndexTSQL (Annotation) (NameComponent) (Name) (([NameComponent])) deriving ( Data,Eq,Show,Typeable) -- cata _sem_Statement :: Statement -> T_Statement _sem_Statement (QueryStatement _ann _ex) = (_sem_Statement_QueryStatement (_sem_Annotation _ann) (_sem_QueryExpr _ex)) _sem_Statement (Insert _ann _table _targetCols _insData _returning) = (_sem_Statement_Insert (_sem_Annotation _ann) (_sem_Name _table) _targetCols (_sem_QueryExpr _insData) (_sem_MaybeSelectList _returning)) _sem_Statement (Update _ann _table _assigns _fromList _whr _returning) = (_sem_Statement_Update (_sem_Annotation _ann) (_sem_Name _table) (_sem_SetClauseList _assigns) (_sem_TableRefList _fromList) (_sem_MaybeBoolExpr _whr) (_sem_MaybeSelectList _returning)) _sem_Statement (Delete _ann _table _using _whr _returning) = (_sem_Statement_Delete (_sem_Annotation _ann) (_sem_Name _table) (_sem_TableRefList _using) (_sem_MaybeBoolExpr _whr) (_sem_MaybeSelectList _returning)) _sem_Statement (CopyFrom _ann _table _targetCols _source _opts) = (_sem_Statement_CopyFrom (_sem_Annotation _ann) (_sem_Name _table) _targetCols _source _opts) _sem_Statement (CopyData _ann _insData) = (_sem_Statement_CopyData (_sem_Annotation _ann) _insData) _sem_Statement (CopyTo _ann _cp _fn _opts) = (_sem_Statement_CopyTo (_sem_Annotation _ann) _cp _fn _opts) _sem_Statement (Truncate _ann _tables _restartIdentity _cascade) = (_sem_Statement_Truncate (_sem_Annotation _ann) _tables _restartIdentity _cascade) _sem_Statement (CreateTable _ann _name _atts _cons _partition _rep) = (_sem_Statement_CreateTable (_sem_Annotation _ann) (_sem_Name _name) (_sem_AttributeDefList _atts) (_sem_ConstraintList _cons) (_sem_MaybeTablePartitionDef _partition) _rep) _sem_Statement (AlterTable _ann _name _operation) = (_sem_Statement_AlterTable (_sem_Annotation _ann) (_sem_Name _name) (_sem_AlterTableOperation _operation)) _sem_Statement (AlterDatabase _ann _name _operation) = (_sem_Statement_AlterDatabase (_sem_Annotation _ann) (_sem_Name _name) (_sem_AlterDatabaseOperation _operation)) _sem_Statement (CreateSequence _ann _name _incr _min _max _start _cache) = (_sem_Statement_CreateSequence (_sem_Annotation _ann) (_sem_Name _name) _incr _min _max _start _cache) _sem_Statement (AlterSequence _ann _name _operation) = (_sem_Statement_AlterSequence (_sem_Annotation _ann) (_sem_Name _name) (_sem_AlterSequenceOperation _operation)) _sem_Statement (CreateTableAs _ann _name _rep _expr) = (_sem_Statement_CreateTableAs (_sem_Annotation _ann) (_sem_Name _name) _rep (_sem_QueryExpr _expr)) _sem_Statement (CreateView _ann _name _colNames _expr) = (_sem_Statement_CreateView (_sem_Annotation _ann) (_sem_Name _name) _colNames (_sem_QueryExpr _expr)) _sem_Statement (AlterView _ann _name _colNames _expr) = (_sem_Statement_AlterView (_sem_Annotation _ann) (_sem_Name _name) _colNames (_sem_QueryExpr _expr)) _sem_Statement (CreateType _ann _name _atts) = (_sem_Statement_CreateType (_sem_Annotation _ann) (_sem_Name _name) (_sem_TypeAttributeDefList _atts)) _sem_Statement (CreateUser _ann _name _password) = (_sem_Statement_CreateUser (_sem_Annotation _ann) (_sem_Name _name) _password) _sem_Statement (CreateLogin _ann _name _password) = (_sem_Statement_CreateLogin (_sem_Annotation _ann) (_sem_Name _name) _password) _sem_Statement (AlterUser _ann _name _password) = (_sem_Statement_AlterUser (_sem_Annotation _ann) (_sem_Name _name) _password) _sem_Statement (AlterLogin _ann _name _password) = (_sem_Statement_AlterLogin (_sem_Annotation _ann) (_sem_Name _name) _password) _sem_Statement (CreateSchema _ann _name _owner) = (_sem_Statement_CreateSchema (_sem_Annotation _ann) _name _owner) _sem_Statement (AlterSchema _ann _name _operation) = (_sem_Statement_AlterSchema (_sem_Annotation _ann) _name (_sem_AlterSchemaOperation _operation)) _sem_Statement (CreateFunction _ann _name _params _rettype _rep _lang _body _vol) = (_sem_Statement_CreateFunction (_sem_Annotation _ann) (_sem_Name _name) (_sem_ParamDefList _params) (_sem_TypeName _rettype) _rep _lang (_sem_FnBody _body) _vol) _sem_Statement (CreateDomain _ann _name _typ _constraintName _check) = (_sem_Statement_CreateDomain (_sem_Annotation _ann) (_sem_Name _name) (_sem_TypeName _typ) _constraintName (_sem_MaybeBoolExpr _check)) _sem_Statement (CreateLanguage _ann _name) = (_sem_Statement_CreateLanguage (_sem_Annotation _ann) _name) _sem_Statement (CreateTrigger _ann _name _wh _events _tbl _firing _fnName _fnArgs) = (_sem_Statement_CreateTrigger (_sem_Annotation _ann) _name _wh _events (_sem_Name _tbl) _firing (_sem_Name _fnName) (_sem_ScalarExprList _fnArgs)) _sem_Statement (DropFunction _ann _ifE _sigs _cascade) = (_sem_Statement_DropFunction (_sem_Annotation _ann) _ifE (_sem_NameTypeNameListPairList _sigs) _cascade) _sem_Statement (DropSomething _ann _dropType _ifE _names _cascade) = (_sem_Statement_DropSomething (_sem_Annotation _ann) _dropType _ifE _names _cascade) _sem_Statement (DropTrigger _ann _ifE _name _tbl _cascade) = (_sem_Statement_DropTrigger (_sem_Annotation _ann) _ifE _name (_sem_Name _tbl) _cascade) _sem_Statement (CreateDatabase _ann _nm) = (_sem_Statement_CreateDatabase (_sem_Annotation _ann) (_sem_Name _nm)) _sem_Statement (Set _ann _name _values) = (_sem_Statement_Set (_sem_Annotation _ann) _name _values) _sem_Statement (Notify _ann _name) = (_sem_Statement_Notify (_sem_Annotation _ann) _name) _sem_Statement (Into _ann _strict _into _stmt) = (_sem_Statement_Into (_sem_Annotation _ann) _strict _into (_sem_Statement _stmt)) _sem_Statement (Assignment _ann _target _value) = (_sem_Statement_Assignment (_sem_Annotation _ann) (_sem_Name _target) (_sem_ScalarExpr _value)) _sem_Statement (Return _ann _value) = (_sem_Statement_Return (_sem_Annotation _ann) (_sem_MaybeScalarExpr _value)) _sem_Statement (ReturnNext _ann _expr) = (_sem_Statement_ReturnNext (_sem_Annotation _ann) (_sem_ScalarExpr _expr)) _sem_Statement (ReturnQuery _ann _sel) = (_sem_Statement_ReturnQuery (_sem_Annotation _ann) (_sem_QueryExpr _sel)) _sem_Statement (Raise _ann _level _message _args) = (_sem_Statement_Raise (_sem_Annotation _ann) _level _message (_sem_ScalarExprList _args)) _sem_Statement (NullStatement _ann) = (_sem_Statement_NullStatement (_sem_Annotation _ann)) _sem_Statement (Perform _ann _expr) = (_sem_Statement_Perform (_sem_Annotation _ann) (_sem_ScalarExpr _expr)) _sem_Statement (Execute _ann _expr) = (_sem_Statement_Execute (_sem_Annotation _ann) (_sem_ScalarExpr _expr)) _sem_Statement (ForQueryStatement _ann _lb _var _sel _sts) = (_sem_Statement_ForQueryStatement (_sem_Annotation _ann) _lb _var (_sem_QueryExpr _sel) (_sem_StatementList _sts)) _sem_Statement (ForIntegerStatement _ann _lb _var _from _to _sts) = (_sem_Statement_ForIntegerStatement (_sem_Annotation _ann) _lb _var (_sem_ScalarExpr _from) (_sem_ScalarExpr _to) (_sem_StatementList _sts)) _sem_Statement (LoopStatement _ann _lb _sts) = (_sem_Statement_LoopStatement (_sem_Annotation _ann) _lb (_sem_StatementList _sts)) _sem_Statement (WhileStatement _ann _lb _expr _sts) = (_sem_Statement_WhileStatement (_sem_Annotation _ann) _lb (_sem_ScalarExpr _expr) (_sem_StatementList _sts)) _sem_Statement (ContinueStatement _ann _lb) = (_sem_Statement_ContinueStatement (_sem_Annotation _ann) _lb) _sem_Statement (ExitStatement _ann _lb) = (_sem_Statement_ExitStatement (_sem_Annotation _ann) _lb) _sem_Statement (CaseStatementSimple _ann _val _cases _els) = (_sem_Statement_CaseStatementSimple (_sem_Annotation _ann) (_sem_ScalarExpr _val) (_sem_ScalarExprListStatementListTripleList _cases) (_sem_StatementList _els)) _sem_Statement (CaseStatement _ann _cases _els) = (_sem_Statement_CaseStatement (_sem_Annotation _ann) (_sem_ScalarExprListStatementListTripleList _cases) (_sem_StatementList _els)) _sem_Statement (If _ann _cases _els) = (_sem_Statement_If (_sem_Annotation _ann) (_sem_ScalarExprStatementListPairList _cases) (_sem_StatementList _els)) _sem_Statement (Block _ann _lb _vars _sts) = (_sem_Statement_Block (_sem_Annotation _ann) _lb (_sem_VarDefList _vars) (_sem_StatementList _sts)) _sem_Statement (AntiStatement _string) = (_sem_Statement_AntiStatement _string) _sem_Statement (DeclareStatement _ann _ds) = (_sem_Statement_DeclareStatement (_sem_Annotation _ann) _ds) _sem_Statement (ExecStatement _ann _spName _args) = (_sem_Statement_ExecStatement (_sem_Annotation _ann) (_sem_Name _spName) (_sem_ScalarExprList _args)) _sem_Statement (CreateIndexTSQL _ann _nm _obj _cols) = (_sem_Statement_CreateIndexTSQL (_sem_Annotation _ann) _nm (_sem_Name _obj) _cols) -- semantic domain type T_Statement = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( Statement,Statement) data Inh_Statement = Inh_Statement {_cat_Inh_Statement :: Catalog,_flags_Inh_Statement :: TypeCheckFlags,_imCast_Inh_Statement :: (Maybe TypeExtra)} data Syn_Statement = Syn_Statement {_annotatedTree_Syn_Statement :: Statement,_originalTree_Syn_Statement :: Statement} _wrap_Statement :: T_Statement -> Inh_Statement -> Syn_Statement _wrap_Statement sem (Inh_Statement _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_Statement _lhsOannotatedTree _lhsOoriginalTree)) _sem_Statement_QueryStatement :: T_Annotation -> T_QueryExpr -> T_Statement _sem_Statement_QueryStatement ann_ ex_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exOexpectedType :: (Maybe [TypeExtra]) _exOouterDownEnv :: (Maybe Environment) _exOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exOcat :: Catalog _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: QueryExpr _exIoriginalTree :: QueryExpr _exIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 19671 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 16, column 5) _exOexpectedType = ({-# LINE 16 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} liftM (map snd) _exIupType {-# LINE 19677 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 91, column 20) _exOouterDownEnv = ({-# LINE 91 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Nothing {-# LINE 19683 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 837, column 32) _exOassignmentCastContext = ({-# LINE 837 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 19689 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} QueryStatement _annIannotatedTree _exIannotatedTree {-# LINE 19695 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} QueryStatement _annIoriginalTree _exIoriginalTree {-# LINE 19701 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 19707 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 19713 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 19719 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 19725 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 19731 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 19737 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 19743 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 19749 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOexpectedType _exOflags _exOimCast _exOouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Insert :: T_Annotation -> T_Name -> ([NameComponent]) -> T_QueryExpr -> T_MaybeSelectList -> T_Statement _sem_Statement_Insert ann_ table_ targetCols_ insData_ returning_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _tpe :: (Either [TypeError] [TypeExtra]) _tableOtpe :: (Either [TypeError] TypeExtra) _insDataOexpectedType :: (Maybe [TypeExtra]) _insDataOouterDownEnv :: (Maybe Environment) _tooManyCols :: (Maybe [TypeError]) _insDataOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tableOcat :: Catalog _tableOflags :: TypeCheckFlags _tableOimCast :: (Maybe TypeExtra) _insDataOcat :: Catalog _insDataOflags :: TypeCheckFlags _insDataOimCast :: (Maybe TypeExtra) _returningOcat :: Catalog _returningOflags :: TypeCheckFlags _returningOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tableIannotatedTree :: Name _tableIoriginalTree :: Name _insDataIannotatedTree :: QueryExpr _insDataIoriginalTree :: QueryExpr _insDataIupType :: (Maybe [(Text,TypeExtra)]) _returningIannotatedTree :: MaybeSelectList _returningIoriginalTree :: MaybeSelectList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 19, column 5) _annOtpe = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Left [] {-# LINE 19800 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 25, column 5) _tpe = ({-# LINE 25 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} do let tnm = nameComponents _tableIoriginalTree (_,pub,_) <- catLookupTableAndAttrs _lhsIcat tnm case targetCols_ of [] -> return $ map snd pub tcs -> do tcs' <- mapM xnmcString tcs let utcs' = nub tcs' when (length utcs' /= length tcs') $ Left $ map DuplicateColumnName $ nub (tcs' \\ utcs') forM tcs' $ \x -> maybe (Left [UnrecognisedIdentifier x]) Right $ lookup x pub {-# LINE 19819 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 44, column 5) _tableOtpe = ({-# LINE 44 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Left (either id (const []) _tpe ++ maybe [] id _tooManyCols ) {-# LINE 19826 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 47, column 5) _insDataOexpectedType = ({-# LINE 47 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} either (const Nothing) Just _tpe {-# LINE 19832 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 49, column 5) _insDataOouterDownEnv = ({-# LINE 49 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Nothing {-# LINE 19838 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 54, column 5) _tooManyCols = ({-# LINE 54 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} do x <- _insDataIupType y <- either (const Nothing) Just _tpe if (length x > length y) then Just [TooManyColumnsInInsert] else Nothing {-# LINE 19849 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 835, column 24) _insDataOassignmentCastContext = ({-# LINE 835 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 19855 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Insert _annIannotatedTree _tableIannotatedTree targetCols_ _insDataIannotatedTree _returningIannotatedTree {-# LINE 19861 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Insert _annIoriginalTree _tableIoriginalTree targetCols_ _insDataIoriginalTree _returningIoriginalTree {-# LINE 19867 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 19873 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 19879 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 19885 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 19891 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 19897 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 19903 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 19909 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 19915 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _insDataOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 19921 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _insDataOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 19927 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _insDataOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 19933 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 19939 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 19945 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 19951 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tableIannotatedTree,_tableIoriginalTree) = table_ _tableOcat _tableOflags _tableOimCast _tableOtpe ( _insDataIannotatedTree,_insDataIoriginalTree,_insDataIupType) = insData_ _insDataOassignmentCastContext _insDataOcat _insDataOexpectedType _insDataOflags _insDataOimCast _insDataOouterDownEnv ( _returningIannotatedTree,_returningIoriginalTree) = returning_ _returningOcat _returningOflags _returningOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Update :: T_Annotation -> T_Name -> T_SetClauseList -> T_TableRefList -> T_MaybeBoolExpr -> T_MaybeSelectList -> T_Statement _sem_Statement_Update ann_ table_ assigns_ fromList_ whr_ returning_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _tableOtpe :: (Either [TypeError] TypeExtra) _whrOdownEnv :: Environment _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tableOcat :: Catalog _tableOflags :: TypeCheckFlags _tableOimCast :: (Maybe TypeExtra) _assignsOcat :: Catalog _assignsOflags :: TypeCheckFlags _assignsOimCast :: (Maybe TypeExtra) _fromListOcat :: Catalog _fromListOflags :: TypeCheckFlags _fromListOimCast :: (Maybe TypeExtra) _whrOcat :: Catalog _whrOflags :: TypeCheckFlags _whrOimCast :: (Maybe TypeExtra) _returningOcat :: Catalog _returningOflags :: TypeCheckFlags _returningOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tableIannotatedTree :: Name _tableIoriginalTree :: Name _assignsIannotatedTree :: SetClauseList _assignsIoriginalTree :: SetClauseList _fromListIannotatedTree :: TableRefList _fromListIoriginalTree :: TableRefList _fromListIupEnv :: Environment _whrIannotatedTree :: MaybeBoolExpr _whrIoriginalTree :: MaybeBoolExpr _returningIannotatedTree :: MaybeSelectList _returningIoriginalTree :: MaybeSelectList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 219, column 24) _tableOtpe = ({-# LINE 219 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20013 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 220, column 24) _whrOdownEnv = ({-# LINE 220 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 20019 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 19, column 5) _annOtpe = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Left [] {-# LINE 20025 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Update _annIannotatedTree _tableIannotatedTree _assignsIannotatedTree _fromListIannotatedTree _whrIannotatedTree _returningIannotatedTree {-# LINE 20031 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Update _annIoriginalTree _tableIoriginalTree _assignsIoriginalTree _fromListIoriginalTree _whrIoriginalTree _returningIoriginalTree {-# LINE 20037 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20043 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20049 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20055 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20061 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20067 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20073 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20079 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20085 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _assignsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20091 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _assignsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20097 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _assignsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20103 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fromListOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20109 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fromListOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20115 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fromListOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20121 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _whrOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20127 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _whrOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20133 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _whrOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20139 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20145 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20151 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20157 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tableIannotatedTree,_tableIoriginalTree) = table_ _tableOcat _tableOflags _tableOimCast _tableOtpe ( _assignsIannotatedTree,_assignsIoriginalTree) = assigns_ _assignsOcat _assignsOflags _assignsOimCast ( _fromListIannotatedTree,_fromListIoriginalTree,_fromListIupEnv) = fromList_ _fromListOcat _fromListOflags _fromListOimCast ( _whrIannotatedTree,_whrIoriginalTree) = whr_ _whrOcat _whrOdownEnv _whrOflags _whrOimCast ( _returningIannotatedTree,_returningIoriginalTree) = returning_ _returningOcat _returningOflags _returningOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Delete :: T_Annotation -> T_Name -> T_TableRefList -> T_MaybeBoolExpr -> T_MaybeSelectList -> T_Statement _sem_Statement_Delete ann_ table_ using_ whr_ returning_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _tableOtpe :: (Either [TypeError] TypeExtra) _whrOdownEnv :: Environment _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tableOcat :: Catalog _tableOflags :: TypeCheckFlags _tableOimCast :: (Maybe TypeExtra) _usingOcat :: Catalog _usingOflags :: TypeCheckFlags _usingOimCast :: (Maybe TypeExtra) _whrOcat :: Catalog _whrOflags :: TypeCheckFlags _whrOimCast :: (Maybe TypeExtra) _returningOcat :: Catalog _returningOflags :: TypeCheckFlags _returningOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tableIannotatedTree :: Name _tableIoriginalTree :: Name _usingIannotatedTree :: TableRefList _usingIoriginalTree :: TableRefList _usingIupEnv :: Environment _whrIannotatedTree :: MaybeBoolExpr _whrIoriginalTree :: MaybeBoolExpr _returningIannotatedTree :: MaybeSelectList _returningIoriginalTree :: MaybeSelectList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 170, column 24) _tableOtpe = ({-# LINE 170 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20217 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 171, column 24) _whrOdownEnv = ({-# LINE 171 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 20223 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 19, column 5) _annOtpe = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Left [] {-# LINE 20229 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Delete _annIannotatedTree _tableIannotatedTree _usingIannotatedTree _whrIannotatedTree _returningIannotatedTree {-# LINE 20235 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Delete _annIoriginalTree _tableIoriginalTree _usingIoriginalTree _whrIoriginalTree _returningIoriginalTree {-# LINE 20241 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20247 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20253 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20259 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20265 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20271 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20277 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20283 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20289 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _usingOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20295 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _usingOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20301 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _usingOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20307 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _whrOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20313 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _whrOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20319 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _whrOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20325 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20331 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20337 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _returningOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20343 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tableIannotatedTree,_tableIoriginalTree) = table_ _tableOcat _tableOflags _tableOimCast _tableOtpe ( _usingIannotatedTree,_usingIoriginalTree,_usingIupEnv) = using_ _usingOcat _usingOflags _usingOimCast ( _whrIannotatedTree,_whrIoriginalTree) = whr_ _whrOcat _whrOdownEnv _whrOflags _whrOimCast ( _returningIannotatedTree,_returningIoriginalTree) = returning_ _returningOcat _returningOflags _returningOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CopyFrom :: T_Annotation -> T_Name -> ([NameComponent]) -> CopyFromSource -> ([CopyFromOption]) -> T_Statement _sem_Statement_CopyFrom ann_ table_ targetCols_ source_ opts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _tableOtpe :: (Either [TypeError] TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tableOcat :: Catalog _tableOflags :: TypeCheckFlags _tableOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tableIannotatedTree :: Name _tableIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 137, column 26) _tableOtpe = ({-# LINE 137 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20384 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 19, column 5) _annOtpe = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Left [] {-# LINE 20390 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CopyFrom _annIannotatedTree _tableIannotatedTree targetCols_ source_ opts_ {-# LINE 20396 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CopyFrom _annIoriginalTree _tableIoriginalTree targetCols_ source_ opts_ {-# LINE 20402 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20408 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20414 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20420 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20426 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20432 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20438 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20444 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tableOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20450 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tableIannotatedTree,_tableIoriginalTree) = table_ _tableOcat _tableOflags _tableOimCast _tableOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CopyData :: T_Annotation -> String -> T_Statement _sem_Statement_CopyData ann_ insData_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 136, column 26) _annOtpe = ({-# LINE 136 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20476 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CopyData _annIannotatedTree insData_ {-# LINE 20482 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CopyData _annIoriginalTree insData_ {-# LINE 20488 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20494 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20500 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20506 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20512 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20518 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CopyTo :: T_Annotation -> CopyToSource -> String -> ([CopyToOption]) -> T_Statement _sem_Statement_CopyTo ann_ cp_ fn_ opts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 19, column 5) _annOtpe = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Left [] {-# LINE 20544 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CopyTo _annIannotatedTree cp_ fn_ opts_ {-# LINE 20550 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CopyTo _annIoriginalTree cp_ fn_ opts_ {-# LINE 20556 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20562 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20568 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20574 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20580 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20586 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Truncate :: T_Annotation -> ([Name]) -> RestartIdentity -> Cascade -> T_Statement _sem_Statement_Truncate ann_ tables_ restartIdentity_ cascade_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag"(line 19, column 5) _annOtpe = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Updates.ag" #-} Left [] {-# LINE 20612 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Truncate _annIannotatedTree tables_ restartIdentity_ cascade_ {-# LINE 20618 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Truncate _annIoriginalTree tables_ restartIdentity_ cascade_ {-# LINE 20624 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20630 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20636 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20642 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20648 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20654 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateTable :: T_Annotation -> T_Name -> T_AttributeDefList -> T_ConstraintList -> T_MaybeTablePartitionDef -> Replace -> T_Statement _sem_Statement_CreateTable ann_ name_ atts_ cons_ partition_ rep_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _attsOcat :: Catalog _attsOflags :: TypeCheckFlags _attsOimCast :: (Maybe TypeExtra) _consOcat :: Catalog _consOflags :: TypeCheckFlags _consOimCast :: (Maybe TypeExtra) _partitionOcat :: Catalog _partitionOflags :: TypeCheckFlags _partitionOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _attsIannotatedTree :: AttributeDefList _attsIoriginalTree :: AttributeDefList _consIannotatedTree :: ConstraintList _consIoriginalTree :: ConstraintList _partitionIannotatedTree :: MaybeTablePartitionDef _partitionIoriginalTree :: MaybeTablePartitionDef -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 152, column 29) _annOtpe = ({-# LINE 152 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20703 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 153, column 29) _nameOtpe = ({-# LINE 153 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20709 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateTable _annIannotatedTree _nameIannotatedTree _attsIannotatedTree _consIannotatedTree _partitionIannotatedTree rep_ {-# LINE 20715 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateTable _annIoriginalTree _nameIoriginalTree _attsIoriginalTree _consIoriginalTree _partitionIoriginalTree rep_ {-# LINE 20721 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20727 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20733 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20739 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20745 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20751 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20757 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20763 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20769 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20775 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20781 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20787 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _consOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20793 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _consOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20799 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _consOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20805 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20811 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20817 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _partitionOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20823 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _attsIannotatedTree,_attsIoriginalTree) = atts_ _attsOcat _attsOflags _attsOimCast ( _consIannotatedTree,_consIoriginalTree) = cons_ _consOcat _consOflags _consOimCast ( _partitionIannotatedTree,_partitionIoriginalTree) = partition_ _partitionOcat _partitionOflags _partitionOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AlterTable :: T_Annotation -> T_Name -> T_AlterTableOperation -> T_Statement _sem_Statement_AlterTable ann_ name_ operation_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _operationOcat :: Catalog _operationOflags :: TypeCheckFlags _operationOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _operationIannotatedTree :: AlterTableOperation _operationIoriginalTree :: AlterTableOperation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 117, column 28) _annOtpe = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20867 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 118, column 28) _nameOtpe = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20873 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterTable _annIannotatedTree _nameIannotatedTree _operationIannotatedTree {-# LINE 20879 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterTable _annIoriginalTree _nameIoriginalTree _operationIoriginalTree {-# LINE 20885 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 20891 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 20897 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20903 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20909 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20915 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20921 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20927 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20933 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 20939 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 20945 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 20951 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _operationIannotatedTree,_operationIoriginalTree) = operation_ _operationOcat _operationOflags _operationOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AlterDatabase :: T_Annotation -> T_Name -> T_AlterDatabaseOperation -> T_Statement _sem_Statement_AlterDatabase ann_ name_ operation_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _operationOcat :: Catalog _operationOflags :: TypeCheckFlags _operationOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _operationIannotatedTree :: AlterDatabaseOperation _operationIoriginalTree :: AlterDatabaseOperation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 110, column 31) _annOtpe = ({-# LINE 110 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20991 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 111, column 31) _nameOtpe = ({-# LINE 111 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 20997 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterDatabase _annIannotatedTree _nameIannotatedTree _operationIannotatedTree {-# LINE 21003 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterDatabase _annIoriginalTree _nameIoriginalTree _operationIoriginalTree {-# LINE 21009 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21015 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21021 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21027 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21033 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21039 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21045 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21051 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21057 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21063 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21069 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21075 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _operationIannotatedTree,_operationIoriginalTree) = operation_ _operationOcat _operationOflags _operationOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateSequence :: T_Annotation -> T_Name -> Integer -> (Maybe Integer) -> (Maybe Integer) -> Integer -> Integer -> T_Statement _sem_Statement_CreateSequence ann_ name_ incr_ min_ max_ start_ cache_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 150, column 32) _annOtpe = ({-# LINE 150 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21114 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 151, column 32) _nameOtpe = ({-# LINE 151 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21120 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateSequence _annIannotatedTree _nameIannotatedTree incr_ min_ max_ start_ cache_ {-# LINE 21126 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateSequence _annIoriginalTree _nameIoriginalTree incr_ min_ max_ start_ cache_ {-# LINE 21132 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21138 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21144 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21150 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21156 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21162 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21168 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21174 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21180 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AlterSequence :: T_Annotation -> T_Name -> T_AlterSequenceOperation -> T_Statement _sem_Statement_AlterSequence ann_ name_ operation_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _operationOcat :: Catalog _operationOflags :: TypeCheckFlags _operationOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _operationIannotatedTree :: AlterSequenceOperation _operationIoriginalTree :: AlterSequenceOperation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 115, column 31) _annOtpe = ({-# LINE 115 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21218 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 116, column 31) _nameOtpe = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21224 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequence _annIannotatedTree _nameIannotatedTree _operationIannotatedTree {-# LINE 21230 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSequence _annIoriginalTree _nameIoriginalTree _operationIoriginalTree {-# LINE 21236 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21242 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21248 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21254 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21260 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21266 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21272 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21278 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21284 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21290 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21296 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21302 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _operationIannotatedTree,_operationIoriginalTree) = operation_ _operationOcat _operationOflags _operationOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateTableAs :: T_Annotation -> T_Name -> Replace -> T_QueryExpr -> T_Statement _sem_Statement_CreateTableAs ann_ name_ rep_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOouterDownEnv :: (Maybe Environment) _nameOtpe :: (Either [TypeError] TypeExtra) _exprOexpectedType :: (Maybe [TypeExtra]) _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _exprIannotatedTree :: QueryExpr _exprIoriginalTree :: QueryExpr _exprIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 154, column 31) _annOtpe = ({-# LINE 154 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21347 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 155, column 31) _exprOouterDownEnv = ({-# LINE 155 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 21353 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 156, column 31) _nameOtpe = ({-# LINE 156 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21359 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 19, column 5) _exprOexpectedType = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} liftM (map snd) _exprIupType {-# LINE 21365 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 827, column 31) _exprOassignmentCastContext = ({-# LINE 827 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 21371 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateTableAs _annIannotatedTree _nameIannotatedTree rep_ _exprIannotatedTree {-# LINE 21377 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateTableAs _annIoriginalTree _nameIoriginalTree rep_ _exprIoriginalTree {-# LINE 21383 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21389 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21395 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21401 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21407 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21413 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21419 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21425 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21431 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21437 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21443 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21449 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _exprIannotatedTree,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOexpectedType _exprOflags _exprOimCast _exprOouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateView :: T_Annotation -> T_Name -> MaybeNameComponentList -> T_QueryExpr -> T_Statement _sem_Statement_CreateView ann_ name_ colNames_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOouterDownEnv :: (Maybe Environment) _nameOtpe :: (Either [TypeError] TypeExtra) _exprOexpectedType :: (Maybe [TypeExtra]) _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _exprIannotatedTree :: QueryExpr _exprIoriginalTree :: QueryExpr _exprIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 167, column 28) _annOtpe = ({-# LINE 167 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21494 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 168, column 28) _exprOouterDownEnv = ({-# LINE 168 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 21500 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 169, column 28) _nameOtpe = ({-# LINE 169 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21506 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 19, column 5) _exprOexpectedType = ({-# LINE 19 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} liftM (map snd) _exprIupType {-# LINE 21512 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 829, column 28) _exprOassignmentCastContext = ({-# LINE 829 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 21518 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateView _annIannotatedTree _nameIannotatedTree colNames_ _exprIannotatedTree {-# LINE 21524 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateView _annIoriginalTree _nameIoriginalTree colNames_ _exprIoriginalTree {-# LINE 21530 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21536 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21542 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21548 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21554 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21560 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21566 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21572 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21578 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21584 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21590 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21596 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _exprIannotatedTree,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOexpectedType _exprOflags _exprOimCast _exprOouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AlterView :: T_Annotation -> T_Name -> MaybeNameComponentList -> T_QueryExpr -> T_Statement _sem_Statement_AlterView ann_ name_ colNames_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOexpectedType :: (Maybe [TypeExtra]) _exprOouterDownEnv :: (Maybe Environment) _nameOtpe :: (Either [TypeError] TypeExtra) _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _exprIannotatedTree :: QueryExpr _exprIoriginalTree :: QueryExpr _exprIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 121, column 27) _annOtpe = ({-# LINE 121 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21641 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 122, column 27) _exprOexpectedType = ({-# LINE 122 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 21647 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 123, column 27) _exprOouterDownEnv = ({-# LINE 123 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 21653 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 124, column 27) _nameOtpe = ({-# LINE 124 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21659 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 824, column 27) _exprOassignmentCastContext = ({-# LINE 824 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 21665 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterView _annIannotatedTree _nameIannotatedTree colNames_ _exprIannotatedTree {-# LINE 21671 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterView _annIoriginalTree _nameIoriginalTree colNames_ _exprIoriginalTree {-# LINE 21677 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21683 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21689 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21695 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21701 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21707 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21713 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21719 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21725 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21731 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21737 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21743 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _exprIannotatedTree,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOexpectedType _exprOflags _exprOimCast _exprOouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateType :: T_Annotation -> T_Name -> T_TypeAttributeDefList -> T_Statement _sem_Statement_CreateType ann_ name_ atts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _attsOcat :: Catalog _attsOflags :: TypeCheckFlags _attsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _attsIannotatedTree :: TypeAttributeDefList _attsIoriginalTree :: TypeAttributeDefList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 163, column 28) _annOtpe = ({-# LINE 163 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21783 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 164, column 28) _nameOtpe = ({-# LINE 164 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21789 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateType _annIannotatedTree _nameIannotatedTree _attsIannotatedTree {-# LINE 21795 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateType _annIoriginalTree _nameIoriginalTree _attsIoriginalTree {-# LINE 21801 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21807 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21813 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21819 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21825 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21831 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21837 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21843 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21849 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21855 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21861 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _attsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21867 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _attsIannotatedTree,_attsIoriginalTree) = atts_ _attsOcat _attsOflags _attsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateUser :: T_Annotation -> T_Name -> String -> T_Statement _sem_Statement_CreateUser ann_ name_ password_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 165, column 28) _annOtpe = ({-# LINE 165 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21902 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 166, column 28) _nameOtpe = ({-# LINE 166 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 21908 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateUser _annIannotatedTree _nameIannotatedTree password_ {-# LINE 21914 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateUser _annIoriginalTree _nameIoriginalTree password_ {-# LINE 21920 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 21926 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 21932 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21938 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21944 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21950 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 21956 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 21962 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 21968 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateLogin :: T_Annotation -> T_Name -> String -> T_Statement _sem_Statement_CreateLogin ann_ name_ password_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 147, column 29) _annOtpe = ({-# LINE 147 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22001 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 148, column 29) _nameOtpe = ({-# LINE 148 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22007 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateLogin _annIannotatedTree _nameIannotatedTree password_ {-# LINE 22013 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateLogin _annIoriginalTree _nameIoriginalTree password_ {-# LINE 22019 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22025 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22031 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22037 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22043 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22049 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22055 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22061 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22067 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AlterUser :: T_Annotation -> T_Name -> String -> T_Statement _sem_Statement_AlterUser ann_ name_ password_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 119, column 27) _annOtpe = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22100 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 120, column 27) _nameOtpe = ({-# LINE 120 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22106 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterUser _annIannotatedTree _nameIannotatedTree password_ {-# LINE 22112 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterUser _annIoriginalTree _nameIoriginalTree password_ {-# LINE 22118 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22124 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22130 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22136 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22142 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22148 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22154 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22160 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22166 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AlterLogin :: T_Annotation -> T_Name -> String -> T_Statement _sem_Statement_AlterLogin ann_ name_ password_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 112, column 28) _annOtpe = ({-# LINE 112 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22199 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 113, column 28) _nameOtpe = ({-# LINE 113 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22205 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterLogin _annIannotatedTree _nameIannotatedTree password_ {-# LINE 22211 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterLogin _annIoriginalTree _nameIoriginalTree password_ {-# LINE 22217 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22223 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22229 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22235 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22241 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22247 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22253 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22259 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22265 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateSchema :: T_Annotation -> NameComponent -> (Maybe Name) -> T_Statement _sem_Statement_CreateSchema ann_ name_ owner_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 149, column 30) _annOtpe = ({-# LINE 149 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22292 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateSchema _annIannotatedTree name_ owner_ {-# LINE 22298 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateSchema _annIoriginalTree name_ owner_ {-# LINE 22304 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22310 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22316 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22322 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22328 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22334 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AlterSchema :: T_Annotation -> NameComponent -> T_AlterSchemaOperation -> T_Statement _sem_Statement_AlterSchema ann_ name_ operation_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _operationOcat :: Catalog _operationOflags :: TypeCheckFlags _operationOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _operationIannotatedTree :: AlterSchemaOperation _operationIoriginalTree :: AlterSchemaOperation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 114, column 29) _annOtpe = ({-# LINE 114 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22364 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSchema _annIannotatedTree name_ _operationIannotatedTree {-# LINE 22370 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AlterSchema _annIoriginalTree name_ _operationIoriginalTree {-# LINE 22376 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22382 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22388 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22394 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22400 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22406 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22412 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22418 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _operationOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22424 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _operationIannotatedTree,_operationIoriginalTree) = operation_ _operationOcat _operationOflags _operationOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateFunction :: T_Annotation -> T_Name -> T_ParamDefList -> T_TypeName -> Replace -> Language -> T_FnBody -> Volatility -> T_Statement _sem_Statement_CreateFunction ann_ name_ params_ rettype_ rep_ lang_ body_ vol_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _paramsOcat :: Catalog _paramsOflags :: TypeCheckFlags _paramsOimCast :: (Maybe TypeExtra) _rettypeOcat :: Catalog _rettypeOflags :: TypeCheckFlags _rettypeOimCast :: (Maybe TypeExtra) _bodyOcat :: Catalog _bodyOflags :: TypeCheckFlags _bodyOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _paramsIannotatedTree :: ParamDefList _paramsIoriginalTree :: ParamDefList _rettypeIannotatedTree :: TypeName _rettypeInamedType :: (Maybe TypeExtra) _rettypeIoriginalTree :: TypeName _bodyIannotatedTree :: FnBody _bodyIoriginalTree :: FnBody -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 143, column 32) _annOtpe = ({-# LINE 143 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22478 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 144, column 32) _nameOtpe = ({-# LINE 144 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22484 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateFunction _annIannotatedTree _nameIannotatedTree _paramsIannotatedTree _rettypeIannotatedTree rep_ lang_ _bodyIannotatedTree vol_ {-# LINE 22490 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateFunction _annIoriginalTree _nameIoriginalTree _paramsIoriginalTree _rettypeIoriginalTree rep_ lang_ _bodyIoriginalTree vol_ {-# LINE 22496 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22502 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22508 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22514 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22520 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22526 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22532 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22538 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22544 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _paramsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22550 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _paramsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22556 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _paramsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22562 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _rettypeOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22568 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _rettypeOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22574 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _rettypeOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22580 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _bodyOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22586 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _bodyOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22592 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _bodyOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22598 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _paramsIannotatedTree,_paramsIoriginalTree) = params_ _paramsOcat _paramsOflags _paramsOimCast ( _rettypeIannotatedTree,_rettypeInamedType,_rettypeIoriginalTree) = rettype_ _rettypeOcat _rettypeOflags _rettypeOimCast ( _bodyIannotatedTree,_bodyIoriginalTree) = body_ _bodyOcat _bodyOflags _bodyOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateDomain :: T_Annotation -> T_Name -> T_TypeName -> String -> T_MaybeBoolExpr -> T_Statement _sem_Statement_CreateDomain ann_ name_ typ_ constraintName_ check_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _checkOdownEnv :: Environment _nameOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nameOcat :: Catalog _nameOflags :: TypeCheckFlags _nameOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _checkOcat :: Catalog _checkOflags :: TypeCheckFlags _checkOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nameIannotatedTree :: Name _nameIoriginalTree :: Name _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName _checkIannotatedTree :: MaybeBoolExpr _checkIoriginalTree :: MaybeBoolExpr -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 140, column 30) _annOtpe = ({-# LINE 140 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22651 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 141, column 30) _checkOdownEnv = ({-# LINE 141 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 22657 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 142, column 30) _nameOtpe = ({-# LINE 142 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22663 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateDomain _annIannotatedTree _nameIannotatedTree _typIannotatedTree constraintName_ _checkIannotatedTree {-# LINE 22669 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateDomain _annIoriginalTree _nameIoriginalTree _typIoriginalTree constraintName_ _checkIoriginalTree {-# LINE 22675 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22681 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22687 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22693 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22699 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22705 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22711 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22717 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22723 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22729 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22735 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22741 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _checkOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22747 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _checkOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22753 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _checkOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22759 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nameIannotatedTree,_nameIoriginalTree) = name_ _nameOcat _nameOflags _nameOimCast _nameOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast ( _checkIannotatedTree,_checkIoriginalTree) = check_ _checkOcat _checkOdownEnv _checkOflags _checkOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateLanguage :: T_Annotation -> String -> T_Statement _sem_Statement_CreateLanguage ann_ name_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 146, column 32) _annOtpe = ({-# LINE 146 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22789 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateLanguage _annIannotatedTree name_ {-# LINE 22795 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateLanguage _annIoriginalTree name_ {-# LINE 22801 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22807 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22813 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22819 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22825 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22831 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateTrigger :: T_Annotation -> NameComponent -> TriggerWhen -> ([TriggerEvent]) -> T_Name -> TriggerFire -> T_Name -> T_ScalarExprList -> T_Statement _sem_Statement_CreateTrigger ann_ name_ wh_ events_ tbl_ firing_ fnName_ fnArgs_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _fnArgsOdownEnv :: Environment _fnArgsOexpectedCast :: Bool _fnArgsOexpectedTypes :: ([TypeExtra]) _fnNameOtpe :: (Either [TypeError] TypeExtra) _tblOtpe :: (Either [TypeError] TypeExtra) _fnArgsOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tblOcat :: Catalog _tblOflags :: TypeCheckFlags _tblOimCast :: (Maybe TypeExtra) _fnNameOcat :: Catalog _fnNameOflags :: TypeCheckFlags _fnNameOimCast :: (Maybe TypeExtra) _fnArgsOcat :: Catalog _fnArgsOflags :: TypeCheckFlags _fnArgsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tblIannotatedTree :: Name _tblIoriginalTree :: Name _fnNameIannotatedTree :: Name _fnNameIoriginalTree :: Name _fnArgsIannotatedTree :: ScalarExprList _fnArgsIoriginalTree :: ScalarExprList _fnArgsIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 157, column 31) _annOtpe = ({-# LINE 157 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22883 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 158, column 31) _fnArgsOdownEnv = ({-# LINE 158 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 22889 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 159, column 31) _fnArgsOexpectedCast = ({-# LINE 159 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 22895 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 160, column 31) _fnArgsOexpectedTypes = ({-# LINE 160 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} [] {-# LINE 22901 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 161, column 31) _fnNameOtpe = ({-# LINE 161 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22907 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 162, column 31) _tblOtpe = ({-# LINE 162 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 22913 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 828, column 31) _fnArgsOassignmentCastContext = ({-# LINE 828 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 22919 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateTrigger _annIannotatedTree name_ wh_ events_ _tblIannotatedTree firing_ _fnNameIannotatedTree _fnArgsIannotatedTree {-# LINE 22925 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateTrigger _annIoriginalTree name_ wh_ events_ _tblIoriginalTree firing_ _fnNameIoriginalTree _fnArgsIoriginalTree {-# LINE 22931 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 22937 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 22943 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22949 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22955 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22961 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22967 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22973 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22979 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 22985 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 22991 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 22997 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnArgsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23003 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnArgsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23009 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnArgsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23015 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tblIannotatedTree,_tblIoriginalTree) = tbl_ _tblOcat _tblOflags _tblOimCast _tblOtpe ( _fnNameIannotatedTree,_fnNameIoriginalTree) = fnName_ _fnNameOcat _fnNameOflags _fnNameOimCast _fnNameOtpe ( _fnArgsIannotatedTree,_fnArgsIoriginalTree,_fnArgsIupTypes) = fnArgs_ _fnArgsOassignmentCastContext _fnArgsOcat _fnArgsOdownEnv _fnArgsOexpectedCast _fnArgsOexpectedTypes _fnArgsOflags _fnArgsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_DropFunction :: T_Annotation -> IfExists -> T_NameTypeNameListPairList -> Cascade -> T_Statement _sem_Statement_DropFunction ann_ ifE_ sigs_ cascade_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _sigsOcat :: Catalog _sigsOflags :: TypeCheckFlags _sigsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _sigsIannotatedTree :: NameTypeNameListPairList _sigsIoriginalTree :: NameTypeNameListPairList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 172, column 30) _annOtpe = ({-# LINE 172 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23052 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropFunction _annIannotatedTree ifE_ _sigsIannotatedTree cascade_ {-# LINE 23058 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropFunction _annIoriginalTree ifE_ _sigsIoriginalTree cascade_ {-# LINE 23064 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23070 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23076 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23082 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23088 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23094 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _sigsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23100 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _sigsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23106 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _sigsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23112 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _sigsIannotatedTree,_sigsIoriginalTree) = sigs_ _sigsOcat _sigsOflags _sigsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_DropSomething :: T_Annotation -> DropType -> IfExists -> ([Name]) -> Cascade -> T_Statement _sem_Statement_DropSomething ann_ dropType_ ifE_ names_ cascade_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 23141 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropSomething _annIannotatedTree dropType_ ifE_ names_ cascade_ {-# LINE 23147 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropSomething _annIoriginalTree dropType_ ifE_ names_ cascade_ {-# LINE 23153 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23159 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23165 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23171 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23177 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23183 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_DropTrigger :: T_Annotation -> IfExists -> NameComponent -> T_Name -> Cascade -> T_Statement _sem_Statement_DropTrigger ann_ ifE_ name_ tbl_ cascade_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _tblOtpe :: (Either [TypeError] TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tblOcat :: Catalog _tblOflags :: TypeCheckFlags _tblOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tblIannotatedTree :: Name _tblIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 173, column 29) _tblOtpe = ({-# LINE 173 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23216 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 23222 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropTrigger _annIannotatedTree ifE_ name_ _tblIannotatedTree cascade_ {-# LINE 23228 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DropTrigger _annIoriginalTree ifE_ name_ _tblIoriginalTree cascade_ {-# LINE 23234 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23240 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23246 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23252 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23258 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23264 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23270 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23276 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23282 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tblIannotatedTree,_tblIoriginalTree) = tbl_ _tblOcat _tblOflags _tblOimCast _tblOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateDatabase :: T_Annotation -> T_Name -> T_Statement _sem_Statement_CreateDatabase ann_ nm_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _nmOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _nmOcat :: Catalog _nmOflags :: TypeCheckFlags _nmOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _nmIannotatedTree :: Name _nmIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 138, column 32) _annOtpe = ({-# LINE 138 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23314 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 139, column 32) _nmOtpe = ({-# LINE 139 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23320 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateDatabase _annIannotatedTree _nmIannotatedTree {-# LINE 23326 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateDatabase _annIoriginalTree _nmIoriginalTree {-# LINE 23332 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23338 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23344 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23350 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23356 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23362 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nmOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23368 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nmOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23374 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _nmOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23380 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _nmIannotatedTree,_nmIoriginalTree) = nm_ _nmOcat _nmOflags _nmOimCast _nmOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Set :: T_Annotation -> String -> ([SetValue]) -> T_Statement _sem_Statement_Set ann_ name_ values_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 218, column 21) _annOtpe = ({-# LINE 218 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23407 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Set _annIannotatedTree name_ values_ {-# LINE 23413 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Set _annIoriginalTree name_ values_ {-# LINE 23419 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23425 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23431 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23437 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23443 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23449 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Notify :: T_Annotation -> String -> T_Statement _sem_Statement_Notify ann_ name_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 196, column 24) _annOtpe = ({-# LINE 196 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23473 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Notify _annIannotatedTree name_ {-# LINE 23479 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Notify _annIoriginalTree name_ {-# LINE 23485 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23491 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23497 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23503 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23509 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23515 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Into :: T_Annotation -> Bool -> ([Name]) -> T_Statement -> T_Statement _sem_Statement_Into ann_ strict_ into_ stmt_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _stmtOcat :: Catalog _stmtOflags :: TypeCheckFlags _stmtOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _stmtIannotatedTree :: Statement _stmtIoriginalTree :: Statement -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 23546 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Into _annIannotatedTree strict_ into_ _stmtIannotatedTree {-# LINE 23552 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Into _annIoriginalTree strict_ into_ _stmtIoriginalTree {-# LINE 23558 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23564 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23570 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23576 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23582 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23588 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stmtOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23594 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stmtOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23600 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stmtOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23606 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _stmtIannotatedTree,_stmtIoriginalTree) = stmt_ _stmtOcat _stmtOflags _stmtOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Assignment :: T_Annotation -> T_Name -> T_ScalarExpr -> T_Statement _sem_Statement_Assignment ann_ target_ value_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _valueOexpectedCast :: Bool _valueOexpectedType :: (Maybe TypeExtra) _valueOodbcFunction :: Bool _annOtpe :: (Either [TypeError] TypeExtra) _targetOtpe :: (Either [TypeError] TypeExtra) _valueOdownEnv :: Environment _valueOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _targetOcat :: Catalog _targetOflags :: TypeCheckFlags _targetOimCast :: (Maybe TypeExtra) _valueOcat :: Catalog _valueOflags :: TypeCheckFlags _valueOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _targetIannotatedTree :: Name _targetIoriginalTree :: Name _valueIannotatedTree :: ScalarExpr _valueIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _valueIoriginalTree :: ScalarExpr _valueIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 125, column 28) _valueOexpectedCast = ({-# LINE 125 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 23651 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 126, column 28) _valueOexpectedType = ({-# LINE 126 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 23657 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 127, column 28) _valueOodbcFunction = ({-# LINE 127 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 23663 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 23669 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 26, column 5) _targetOtpe = ({-# LINE 26 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 23675 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 27, column 5) _valueOdownEnv = ({-# LINE 27 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} E.emptyEnvironment {-# LINE 23681 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 825, column 28) _valueOassignmentCastContext = ({-# LINE 825 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 23687 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Assignment _annIannotatedTree _targetIannotatedTree _valueIannotatedTree {-# LINE 23693 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Assignment _annIoriginalTree _targetIoriginalTree _valueIoriginalTree {-# LINE 23699 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23705 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23711 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23717 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23723 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23729 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _targetOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23735 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _targetOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23741 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _targetOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23747 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23753 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23759 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23765 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _targetIannotatedTree,_targetIoriginalTree) = target_ _targetOcat _targetOflags _targetOimCast _targetOtpe ( _valueIannotatedTree,_valueIcolExprs,_valueIoriginalTree,_valueIupType) = value_ _valueOassignmentCastContext _valueOcat _valueOdownEnv _valueOexpectedCast _valueOexpectedType _valueOflags _valueOimCast _valueOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Return :: T_Annotation -> T_MaybeScalarExpr -> T_Statement _sem_Statement_Return ann_ value_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _valueOdownEnv :: Environment _valueOexpectedCast :: Bool _valueOexpectedType :: (Maybe TypeExtra) _valueOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _valueOcat :: Catalog _valueOflags :: TypeCheckFlags _valueOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _valueIannotatedTree :: MaybeScalarExpr _valueIoriginalTree :: MaybeScalarExpr _valueIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 207, column 24) _annOtpe = ({-# LINE 207 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23803 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 208, column 24) _valueOdownEnv = ({-# LINE 208 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 23809 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 209, column 24) _valueOexpectedCast = ({-# LINE 209 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 23815 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 210, column 24) _valueOexpectedType = ({-# LINE 210 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 23821 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 839, column 24) _valueOassignmentCastContext = ({-# LINE 839 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 23827 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Return _annIannotatedTree _valueIannotatedTree {-# LINE 23833 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Return _annIoriginalTree _valueIoriginalTree {-# LINE 23839 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23845 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23851 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23857 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23863 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23869 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23875 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23881 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valueOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23887 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _valueIannotatedTree,_valueIoriginalTree,_valueIupType) = value_ _valueOassignmentCastContext _valueOcat _valueOdownEnv _valueOexpectedCast _valueOexpectedType _valueOflags _valueOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_ReturnNext :: T_Annotation -> T_ScalarExpr -> T_Statement _sem_Statement_ReturnNext ann_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOodbcFunction :: Bool _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 211, column 28) _annOtpe = ({-# LINE 211 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 23925 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 212, column 28) _exprOdownEnv = ({-# LINE 212 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 23931 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 213, column 28) _exprOexpectedCast = ({-# LINE 213 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 23937 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 214, column 28) _exprOexpectedType = ({-# LINE 214 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 23943 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 215, column 28) _exprOodbcFunction = ({-# LINE 215 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 23949 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 840, column 28) _exprOassignmentCastContext = ({-# LINE 840 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 23955 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ReturnNext _annIannotatedTree _exprIannotatedTree {-# LINE 23961 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ReturnNext _annIoriginalTree _exprIoriginalTree {-# LINE 23967 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 23973 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 23979 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 23985 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 23991 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 23997 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24003 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24009 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24015 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_ReturnQuery :: T_Annotation -> T_QueryExpr -> T_Statement _sem_Statement_ReturnQuery ann_ sel_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _selOouterDownEnv :: (Maybe Environment) _selOexpectedType :: (Maybe [TypeExtra]) _selOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _selOcat :: Catalog _selOflags :: TypeCheckFlags _selOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _selIannotatedTree :: QueryExpr _selIoriginalTree :: QueryExpr _selIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 216, column 29) _annOtpe = ({-# LINE 216 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24050 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 217, column 29) _selOouterDownEnv = ({-# LINE 217 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 24056 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 22, column 5) _selOexpectedType = ({-# LINE 22 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} liftM (map snd) _selIupType {-# LINE 24062 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 841, column 29) _selOassignmentCastContext = ({-# LINE 841 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 24068 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ReturnQuery _annIannotatedTree _selIannotatedTree {-# LINE 24074 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ReturnQuery _annIoriginalTree _selIoriginalTree {-# LINE 24080 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24086 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24092 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24098 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24104 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24110 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24116 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24122 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24128 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _selIannotatedTree,_selIoriginalTree,_selIupType) = sel_ _selOassignmentCastContext _selOcat _selOexpectedType _selOflags _selOimCast _selOouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Raise :: T_Annotation -> RaiseType -> String -> T_ScalarExprList -> T_Statement _sem_Statement_Raise ann_ level_ message_ args_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _argsOdownEnv :: Environment _argsOexpectedCast :: Bool _argsOexpectedTypes :: ([TypeExtra]) _argsOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _argsOcat :: Catalog _argsOflags :: TypeCheckFlags _argsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _argsIannotatedTree :: ScalarExprList _argsIoriginalTree :: ScalarExprList _argsIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 203, column 23) _annOtpe = ({-# LINE 203 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24166 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 204, column 23) _argsOdownEnv = ({-# LINE 204 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 24172 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 205, column 23) _argsOexpectedCast = ({-# LINE 205 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24178 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 206, column 23) _argsOexpectedTypes = ({-# LINE 206 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} [] {-# LINE 24184 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 838, column 23) _argsOassignmentCastContext = ({-# LINE 838 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 24190 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Raise _annIannotatedTree level_ message_ _argsIannotatedTree {-# LINE 24196 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Raise _annIoriginalTree level_ message_ _argsIoriginalTree {-# LINE 24202 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24208 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24214 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24220 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24226 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24232 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24238 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24244 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24250 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _argsIannotatedTree,_argsIoriginalTree,_argsIupTypes) = args_ _argsOassignmentCastContext _argsOcat _argsOdownEnv _argsOexpectedCast _argsOexpectedTypes _argsOflags _argsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_NullStatement :: T_Annotation -> T_Statement _sem_Statement_NullStatement ann_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 197, column 31) _annOtpe = ({-# LINE 197 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24275 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NullStatement _annIannotatedTree {-# LINE 24281 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} NullStatement _annIoriginalTree {-# LINE 24287 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24293 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24299 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24305 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24311 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24317 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Perform :: T_Annotation -> T_ScalarExpr -> T_Statement _sem_Statement_Perform ann_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOodbcFunction :: Bool _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 198, column 25) _annOtpe = ({-# LINE 198 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24353 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 199, column 25) _exprOdownEnv = ({-# LINE 199 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 24359 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 200, column 25) _exprOexpectedCast = ({-# LINE 200 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24365 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 201, column 25) _exprOexpectedType = ({-# LINE 201 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 24371 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 202, column 25) _exprOodbcFunction = ({-# LINE 202 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24377 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 836, column 25) _exprOassignmentCastContext = ({-# LINE 836 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 24383 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Perform _annIannotatedTree _exprIannotatedTree {-# LINE 24389 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Perform _annIoriginalTree _exprIoriginalTree {-# LINE 24395 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24401 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24407 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24413 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24419 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24425 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24431 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24437 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24443 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Execute :: T_Annotation -> T_ScalarExpr -> T_Statement _sem_Statement_Execute ann_ expr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOodbcFunction :: Bool _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 178, column 25) _annOtpe = ({-# LINE 178 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24481 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 179, column 25) _exprOdownEnv = ({-# LINE 179 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 24487 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 180, column 25) _exprOexpectedCast = ({-# LINE 180 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24493 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 181, column 25) _exprOexpectedType = ({-# LINE 181 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 24499 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 182, column 25) _exprOodbcFunction = ({-# LINE 182 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24505 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 831, column 25) _exprOassignmentCastContext = ({-# LINE 831 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 24511 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Execute _annIannotatedTree _exprIannotatedTree {-# LINE 24517 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Execute _annIoriginalTree _exprIoriginalTree {-# LINE 24523 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24541 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24559 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24571 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_ForQueryStatement :: T_Annotation -> (Maybe String) -> NameComponent -> T_QueryExpr -> T_StatementList -> T_Statement _sem_Statement_ForQueryStatement ann_ lb_ var_ sel_ sts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _selOouterDownEnv :: (Maybe Environment) _selOexpectedType :: (Maybe [TypeExtra]) _selOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _selOcat :: Catalog _selOflags :: TypeCheckFlags _selOimCast :: (Maybe TypeExtra) _stsOcat :: Catalog _stsOflags :: TypeCheckFlags _stsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _selIannotatedTree :: QueryExpr _selIoriginalTree :: QueryExpr _selIupType :: (Maybe [(Text,TypeExtra)]) _stsIannotatedTree :: StatementList _stsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 193, column 35) _annOtpe = ({-# LINE 193 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24614 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 194, column 35) _selOouterDownEnv = ({-# LINE 194 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 24620 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 22, column 5) _selOexpectedType = ({-# LINE 22 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} liftM (map snd) _selIupType {-# LINE 24626 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 834, column 35) _selOassignmentCastContext = ({-# LINE 834 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 24632 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ForQueryStatement _annIannotatedTree lb_ var_ _selIannotatedTree _stsIannotatedTree {-# LINE 24638 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ForQueryStatement _annIoriginalTree lb_ var_ _selIoriginalTree _stsIoriginalTree {-# LINE 24644 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24650 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24656 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24662 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24668 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24674 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24680 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24686 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24692 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24698 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24704 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24710 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _selIannotatedTree,_selIoriginalTree,_selIupType) = sel_ _selOassignmentCastContext _selOcat _selOexpectedType _selOflags _selOimCast _selOouterDownEnv ( _stsIannotatedTree,_stsIoriginalTree) = sts_ _stsOcat _stsOflags _stsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_ForIntegerStatement :: T_Annotation -> (Maybe String) -> NameComponent -> T_ScalarExpr -> T_ScalarExpr -> T_StatementList -> T_Statement _sem_Statement_ForIntegerStatement ann_ lb_ var_ from_ to_ sts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _fromOdownEnv :: Environment _fromOexpectedCast :: Bool _fromOexpectedType :: (Maybe TypeExtra) _fromOodbcFunction :: Bool _toOdownEnv :: Environment _toOexpectedCast :: Bool _toOexpectedType :: (Maybe TypeExtra) _toOodbcFunction :: Bool _fromOassignmentCastContext :: Bool _toOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _fromOcat :: Catalog _fromOflags :: TypeCheckFlags _fromOimCast :: (Maybe TypeExtra) _toOcat :: Catalog _toOflags :: TypeCheckFlags _toOimCast :: (Maybe TypeExtra) _stsOcat :: Catalog _stsOflags :: TypeCheckFlags _stsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _fromIannotatedTree :: ScalarExpr _fromIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _fromIoriginalTree :: ScalarExpr _fromIupType :: (Maybe TypeExtra) _toIannotatedTree :: ScalarExpr _toIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _toIoriginalTree :: ScalarExpr _toIupType :: (Maybe TypeExtra) _stsIannotatedTree :: StatementList _stsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 184, column 37) _annOtpe = ({-# LINE 184 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24771 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 185, column 37) _fromOdownEnv = ({-# LINE 185 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 24777 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 186, column 37) _fromOexpectedCast = ({-# LINE 186 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24783 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 187, column 37) _fromOexpectedType = ({-# LINE 187 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 24789 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 188, column 37) _fromOodbcFunction = ({-# LINE 188 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24795 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 189, column 37) _toOdownEnv = ({-# LINE 189 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 24801 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 190, column 37) _toOexpectedCast = ({-# LINE 190 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24807 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 191, column 37) _toOexpectedType = ({-# LINE 191 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 24813 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 192, column 37) _toOodbcFunction = ({-# LINE 192 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 24819 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 832, column 37) _fromOassignmentCastContext = ({-# LINE 832 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 24825 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 833, column 37) _toOassignmentCastContext = ({-# LINE 833 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 24831 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ForIntegerStatement _annIannotatedTree lb_ var_ _fromIannotatedTree _toIannotatedTree _stsIannotatedTree {-# LINE 24837 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ForIntegerStatement _annIoriginalTree lb_ var_ _fromIoriginalTree _toIoriginalTree _stsIoriginalTree {-# LINE 24843 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24849 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24855 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24861 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24867 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24873 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fromOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24879 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fromOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24885 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fromOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24891 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _toOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24897 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _toOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24903 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _toOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24909 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24915 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24921 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 24927 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _fromIannotatedTree,_fromIcolExprs,_fromIoriginalTree,_fromIupType) = from_ _fromOassignmentCastContext _fromOcat _fromOdownEnv _fromOexpectedCast _fromOexpectedType _fromOflags _fromOimCast _fromOodbcFunction ( _toIannotatedTree,_toIcolExprs,_toIoriginalTree,_toIupType) = to_ _toOassignmentCastContext _toOcat _toOdownEnv _toOexpectedCast _toOexpectedType _toOflags _toOimCast _toOodbcFunction ( _stsIannotatedTree,_stsIoriginalTree) = sts_ _stsOcat _stsOflags _stsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_LoopStatement :: T_Annotation -> (Maybe String) -> T_StatementList -> T_Statement _sem_Statement_LoopStatement ann_ lb_ sts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _stsOcat :: Catalog _stsOflags :: TypeCheckFlags _stsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _stsIannotatedTree :: StatementList _stsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 195, column 31) _annOtpe = ({-# LINE 195 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 24963 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} LoopStatement _annIannotatedTree lb_ _stsIannotatedTree {-# LINE 24969 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} LoopStatement _annIoriginalTree lb_ _stsIoriginalTree {-# LINE 24975 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 24981 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 24987 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 24993 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 24999 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25005 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25011 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25017 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25023 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _stsIannotatedTree,_stsIoriginalTree) = sts_ _stsOcat _stsOflags _stsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_WhileStatement :: T_Annotation -> (Maybe String) -> T_ScalarExpr -> T_StatementList -> T_Statement _sem_Statement_WhileStatement ann_ lb_ expr_ sts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _exprOdownEnv :: Environment _exprOexpectedCast :: Bool _exprOexpectedType :: (Maybe TypeExtra) _exprOodbcFunction :: Bool _exprOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exprOcat :: Catalog _exprOflags :: TypeCheckFlags _exprOimCast :: (Maybe TypeExtra) _stsOcat :: Catalog _stsOflags :: TypeCheckFlags _stsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exprIannotatedTree :: ScalarExpr _exprIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _exprIoriginalTree :: ScalarExpr _exprIupType :: (Maybe TypeExtra) _stsIannotatedTree :: StatementList _stsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 221, column 32) _annOtpe = ({-# LINE 221 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 25068 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 222, column 32) _exprOdownEnv = ({-# LINE 222 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 25074 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 223, column 32) _exprOexpectedCast = ({-# LINE 223 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 25080 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 224, column 32) _exprOexpectedType = ({-# LINE 224 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 25086 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 225, column 32) _exprOodbcFunction = ({-# LINE 225 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 25092 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 842, column 32) _exprOassignmentCastContext = ({-# LINE 842 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 25098 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WhileStatement _annIannotatedTree lb_ _exprIannotatedTree _stsIannotatedTree {-# LINE 25104 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WhileStatement _annIoriginalTree lb_ _exprIoriginalTree _stsIoriginalTree {-# LINE 25110 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25116 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25122 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25128 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25134 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25140 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25146 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25152 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25158 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25164 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25170 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25176 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exprIannotatedTree,_exprIcolExprs,_exprIoriginalTree,_exprIupType) = expr_ _exprOassignmentCastContext _exprOcat _exprOdownEnv _exprOexpectedCast _exprOexpectedType _exprOflags _exprOimCast _exprOodbcFunction ( _stsIannotatedTree,_stsIoriginalTree) = sts_ _stsOcat _stsOflags _stsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_ContinueStatement :: T_Annotation -> (Maybe String) -> T_Statement _sem_Statement_ContinueStatement ann_ lb_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 135, column 35) _annOtpe = ({-# LINE 135 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 25204 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ContinueStatement _annIannotatedTree lb_ {-# LINE 25210 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ContinueStatement _annIoriginalTree lb_ {-# LINE 25216 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25222 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25228 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25234 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25240 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25246 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_ExitStatement :: T_Annotation -> (Maybe String) -> T_Statement _sem_Statement_ExitStatement ann_ lb_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 183, column 31) _annOtpe = ({-# LINE 183 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 25270 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ExitStatement _annIannotatedTree lb_ {-# LINE 25276 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ExitStatement _annIoriginalTree lb_ {-# LINE 25282 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25288 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25294 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25300 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25306 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25312 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CaseStatementSimple :: T_Annotation -> T_ScalarExpr -> T_ScalarExprListStatementListTripleList -> T_StatementList -> T_Statement _sem_Statement_CaseStatementSimple ann_ val_ cases_ els_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _valOdownEnv :: Environment _valOexpectedCast :: Bool _valOexpectedType :: (Maybe TypeExtra) _valOodbcFunction :: Bool _valOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _valOcat :: Catalog _valOflags :: TypeCheckFlags _valOimCast :: (Maybe TypeExtra) _casesOcat :: Catalog _casesOflags :: TypeCheckFlags _casesOimCast :: (Maybe TypeExtra) _elsOcat :: Catalog _elsOflags :: TypeCheckFlags _elsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _valIannotatedTree :: ScalarExpr _valIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _valIoriginalTree :: ScalarExpr _valIupType :: (Maybe TypeExtra) _casesIannotatedTree :: ScalarExprListStatementListTripleList _casesIoriginalTree :: ScalarExprListStatementListTripleList _elsIannotatedTree :: StatementList _elsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 130, column 37) _annOtpe = ({-# LINE 130 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 25360 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 131, column 37) _valOdownEnv = ({-# LINE 131 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 25366 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 132, column 37) _valOexpectedCast = ({-# LINE 132 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 25372 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 133, column 37) _valOexpectedType = ({-# LINE 133 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 25378 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 134, column 37) _valOodbcFunction = ({-# LINE 134 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 25384 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 826, column 37) _valOassignmentCastContext = ({-# LINE 826 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 25390 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CaseStatementSimple _annIannotatedTree _valIannotatedTree _casesIannotatedTree _elsIannotatedTree {-# LINE 25396 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CaseStatementSimple _annIoriginalTree _valIoriginalTree _casesIoriginalTree _elsIoriginalTree {-# LINE 25402 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25408 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25414 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25420 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25426 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25432 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25438 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25444 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _valOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25450 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25456 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25462 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25468 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25474 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25480 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25486 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _valIannotatedTree,_valIcolExprs,_valIoriginalTree,_valIupType) = val_ _valOassignmentCastContext _valOcat _valOdownEnv _valOexpectedCast _valOexpectedType _valOflags _valOimCast _valOodbcFunction ( _casesIannotatedTree,_casesIoriginalTree) = cases_ _casesOcat _casesOflags _casesOimCast ( _elsIannotatedTree,_elsIoriginalTree) = els_ _elsOcat _elsOflags _elsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CaseStatement :: T_Annotation -> T_ScalarExprListStatementListTripleList -> T_StatementList -> T_Statement _sem_Statement_CaseStatement ann_ cases_ els_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _casesOcat :: Catalog _casesOflags :: TypeCheckFlags _casesOimCast :: (Maybe TypeExtra) _elsOcat :: Catalog _elsOflags :: TypeCheckFlags _elsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _casesIannotatedTree :: ScalarExprListStatementListTripleList _casesIoriginalTree :: ScalarExprListStatementListTripleList _elsIannotatedTree :: StatementList _elsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 129, column 31) _annOtpe = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 25527 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CaseStatement _annIannotatedTree _casesIannotatedTree _elsIannotatedTree {-# LINE 25533 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CaseStatement _annIoriginalTree _casesIoriginalTree _elsIoriginalTree {-# LINE 25539 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25545 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25551 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25557 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25563 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25569 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25575 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25581 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25587 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25593 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25599 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25605 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _casesIannotatedTree,_casesIoriginalTree) = cases_ _casesOcat _casesOflags _casesOimCast ( _elsIannotatedTree,_elsIoriginalTree) = els_ _elsOcat _elsOflags _elsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_If :: T_Annotation -> T_ScalarExprStatementListPairList -> T_StatementList -> T_Statement _sem_Statement_If ann_ cases_ els_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _casesOcat :: Catalog _casesOflags :: TypeCheckFlags _casesOimCast :: (Maybe TypeExtra) _elsOcat :: Catalog _elsOflags :: TypeCheckFlags _elsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _casesIannotatedTree :: ScalarExprStatementListPairList _casesIoriginalTree :: ScalarExprStatementListPairList _elsIannotatedTree :: StatementList _elsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 25644 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} If _annIannotatedTree _casesIannotatedTree _elsIannotatedTree {-# LINE 25650 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} If _annIoriginalTree _casesIoriginalTree _elsIoriginalTree {-# LINE 25656 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25662 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25668 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25674 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25680 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25686 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25692 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25698 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _casesOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25704 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25710 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25716 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _elsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25722 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _casesIannotatedTree,_casesIoriginalTree) = cases_ _casesOcat _casesOflags _casesOimCast ( _elsIannotatedTree,_elsIoriginalTree) = els_ _elsOcat _elsOflags _elsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_Block :: T_Annotation -> (Maybe String) -> T_VarDefList -> T_StatementList -> T_Statement _sem_Statement_Block ann_ lb_ vars_ sts_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _varsOcat :: Catalog _varsOflags :: TypeCheckFlags _varsOimCast :: (Maybe TypeExtra) _stsOcat :: Catalog _stsOflags :: TypeCheckFlags _stsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _varsIannotatedTree :: VarDefList _varsIoriginalTree :: VarDefList _stsIannotatedTree :: StatementList _stsIoriginalTree :: StatementList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 128, column 23) _annOtpe = ({-# LINE 128 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 25762 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Block _annIannotatedTree lb_ _varsIannotatedTree _stsIannotatedTree {-# LINE 25768 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Block _annIoriginalTree lb_ _varsIoriginalTree _stsIoriginalTree {-# LINE 25774 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25780 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25786 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25792 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25798 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25804 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _varsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25810 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _varsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25816 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _varsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25822 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25828 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25834 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _stsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25840 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _varsIannotatedTree,_varsIoriginalTree) = vars_ _varsOcat _varsOflags _varsOimCast ( _stsIannotatedTree,_stsIoriginalTree) = sts_ _stsOcat _stsOflags _stsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_AntiStatement :: String -> T_Statement _sem_Statement_AntiStatement string_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AntiStatement string_ {-# LINE 25861 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} AntiStatement string_ {-# LINE 25867 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25873 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25879 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_DeclareStatement :: T_Annotation -> ([(String,TypeName,Maybe ScalarExpr)]) -> T_Statement _sem_Statement_DeclareStatement ann_ ds_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 25901 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DeclareStatement _annIannotatedTree ds_ {-# LINE 25907 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} DeclareStatement _annIoriginalTree ds_ {-# LINE 25913 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 25919 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 25925 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 25931 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 25937 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 25943 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_ExecStatement :: T_Annotation -> T_Name -> T_ScalarExprList -> T_Statement _sem_Statement_ExecStatement ann_ spName_ args_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _argsOdownEnv :: Environment _argsOexpectedCast :: Bool _argsOexpectedTypes :: ([TypeExtra]) _spNameOtpe :: (Either [TypeError] TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _argsOassignmentCastContext :: Bool _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _spNameOcat :: Catalog _spNameOflags :: TypeCheckFlags _spNameOimCast :: (Maybe TypeExtra) _argsOcat :: Catalog _argsOflags :: TypeCheckFlags _argsOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _spNameIannotatedTree :: Name _spNameIoriginalTree :: Name _argsIannotatedTree :: ScalarExprList _argsIoriginalTree :: ScalarExprList _argsIupTypes :: ([Maybe TypeExtra]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 174, column 31) _argsOdownEnv = ({-# LINE 174 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 25984 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 175, column 31) _argsOexpectedCast = ({-# LINE 175 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 25990 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 176, column 31) _argsOexpectedTypes = ({-# LINE 176 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} [] {-# LINE 25996 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 177, column 31) _spNameOtpe = ({-# LINE 177 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 26002 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 26008 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 830, column 31) _argsOassignmentCastContext = ({-# LINE 830 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 26014 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ExecStatement _annIannotatedTree _spNameIannotatedTree _argsIannotatedTree {-# LINE 26020 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ExecStatement _annIoriginalTree _spNameIoriginalTree _argsIoriginalTree {-# LINE 26026 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 26032 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26038 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26044 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26050 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26056 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _spNameOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26062 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _spNameOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26068 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _spNameOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26074 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26080 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26086 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _argsOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26092 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _spNameIannotatedTree,_spNameIoriginalTree) = spName_ _spNameOcat _spNameOflags _spNameOimCast _spNameOtpe ( _argsIannotatedTree,_argsIoriginalTree,_argsIupTypes) = args_ _argsOassignmentCastContext _argsOcat _argsOdownEnv _argsOexpectedCast _argsOexpectedTypes _argsOflags _argsOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_Statement_CreateIndexTSQL :: T_Annotation -> NameComponent -> T_Name -> ([NameComponent]) -> T_Statement _sem_Statement_CreateIndexTSQL ann_ nm_ obj_ cols_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _objOtpe :: (Either [TypeError] TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: Statement _lhsOoriginalTree :: Statement _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _objOcat :: Catalog _objOflags :: TypeCheckFlags _objOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _objIannotatedTree :: Name _objIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 145, column 33) _objOtpe = ({-# LINE 145 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 26128 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag"(line 13, column 5) _annOtpe = ({-# LINE 13 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Statements.ag" #-} Left [] {-# LINE 26134 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateIndexTSQL _annIannotatedTree nm_ _objIannotatedTree cols_ {-# LINE 26140 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} CreateIndexTSQL _annIoriginalTree nm_ _objIoriginalTree cols_ {-# LINE 26146 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 26152 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26158 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26164 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26170 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26176 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _objOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26182 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _objOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26188 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _objOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26194 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _objIannotatedTree,_objIoriginalTree) = obj_ _objOcat _objOflags _objOimCast _objOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- StatementList ----------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : StatementList originalTree : StatementList alternatives: alternative Cons: child hd : Statement child tl : StatementList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type StatementList = [Statement] -- cata _sem_StatementList :: StatementList -> T_StatementList _sem_StatementList list = (Prelude.foldr _sem_StatementList_Cons _sem_StatementList_Nil (Prelude.map _sem_Statement list)) -- semantic domain type T_StatementList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( StatementList,StatementList) data Inh_StatementList = Inh_StatementList {_cat_Inh_StatementList :: Catalog,_flags_Inh_StatementList :: TypeCheckFlags,_imCast_Inh_StatementList :: (Maybe TypeExtra)} data Syn_StatementList = Syn_StatementList {_annotatedTree_Syn_StatementList :: StatementList,_originalTree_Syn_StatementList :: StatementList} _wrap_StatementList :: T_StatementList -> Inh_StatementList -> Syn_StatementList _wrap_StatementList sem (Inh_StatementList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_StatementList _lhsOannotatedTree _lhsOoriginalTree)) _sem_StatementList_Cons :: T_Statement -> T_StatementList -> T_StatementList _sem_StatementList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: StatementList _lhsOoriginalTree :: StatementList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: Statement _hdIoriginalTree :: Statement _tlIannotatedTree :: StatementList _tlIoriginalTree :: StatementList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 26265 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 26271 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 26277 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26283 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26289 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26295 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26301 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26307 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26313 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26319 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_StatementList_Nil :: T_StatementList _sem_StatementList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: StatementList _lhsOoriginalTree :: StatementList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 26337 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 26343 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 26349 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26355 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- TablePartitionDef ------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : TablePartitionDef originalTree : TablePartitionDef alternatives: alternative TablePartitionDef: child ann : Annotation child colname : {NameComponent} child interval : {Integer} child timeframe : {TablePartitionDateTimeInterval} visit 0: local annotatedTree : _ local originalTree : _ -} data TablePartitionDef = TablePartitionDef (Annotation) (NameComponent) (Integer) (TablePartitionDateTimeInterval) deriving ( Data,Eq,Show,Typeable) -- cata _sem_TablePartitionDef :: TablePartitionDef -> T_TablePartitionDef _sem_TablePartitionDef (TablePartitionDef _ann _colname _interval _timeframe) = (_sem_TablePartitionDef_TablePartitionDef (_sem_Annotation _ann) _colname _interval _timeframe) -- semantic domain type T_TablePartitionDef = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( TablePartitionDef,TablePartitionDef) data Inh_TablePartitionDef = Inh_TablePartitionDef {_cat_Inh_TablePartitionDef :: Catalog,_flags_Inh_TablePartitionDef :: TypeCheckFlags,_imCast_Inh_TablePartitionDef :: (Maybe TypeExtra)} data Syn_TablePartitionDef = Syn_TablePartitionDef {_annotatedTree_Syn_TablePartitionDef :: TablePartitionDef,_originalTree_Syn_TablePartitionDef :: TablePartitionDef} _wrap_TablePartitionDef :: T_TablePartitionDef -> Inh_TablePartitionDef -> Syn_TablePartitionDef _wrap_TablePartitionDef sem (Inh_TablePartitionDef _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_TablePartitionDef _lhsOannotatedTree _lhsOoriginalTree)) _sem_TablePartitionDef_TablePartitionDef :: T_Annotation -> NameComponent -> Integer -> TablePartitionDateTimeInterval -> T_TablePartitionDef _sem_TablePartitionDef_TablePartitionDef ann_ colname_ interval_ timeframe_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TablePartitionDef _lhsOoriginalTree :: TablePartitionDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 226, column 43) _annOtpe = ({-# LINE 226 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 26419 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TablePartitionDef _annIannotatedTree colname_ interval_ timeframe_ {-# LINE 26425 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TablePartitionDef _annIoriginalTree colname_ interval_ timeframe_ {-# LINE 26431 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 26437 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26443 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26449 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26455 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26461 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- TableRef ---------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : TableRef originalTree : TableRef upEnv : Environment alternatives: alternative Tref: child ann : Annotation child tbl : Name visit 0: local eEnv : {Either [TypeError] Environment} local newAlias : _ local annotatedTree : _ local originalTree : _ alternative FunTref: child ann : Annotation child fn : ScalarExpr visit 0: local eEnv : {Either [TypeError] Environment} local newAlias : _ local annotatedTree : _ local originalTree : _ alternative SubTref: child ann : Annotation child sel : QueryExpr visit 0: local eEnv : {Either [TypeError] Environment} local newAlias : _ local annotatedTree : _ local originalTree : _ alternative JoinTref: child ann : Annotation child tref0 : TableRef child nat : {Natural} child joinType : {JoinType} child joinHint : {Maybe JoinHint} child tref1 : TableRef child onExpr : OnExpr visit 0: local eEnv : {Either [TypeError] Environment} local newAlias : _ local annotatedTree : _ local originalTree : _ alternative TableAlias: child ann : Annotation child tb : {NameComponent} child tref : TableRef visit 0: local eEnv : {Either [TypeError] Environment} local annotatedTree : _ local originalTree : _ alternative FullAlias: child ann : Annotation child tb : {NameComponent} child cols : {[NameComponent]} child tref : TableRef visit 0: local eEnv : {Either [TypeError] Environment} local annotatedTree : _ local originalTree : _ alternative TableRefParens: child ann : Annotation child tref : TableRef visit 0: local eEnv : {Either [TypeError] Environment} local newAlias : _ local annotatedTree : _ local originalTree : _ alternative OdbcTableRef: child ann : Annotation child tref : TableRef visit 0: local eEnv : {Either [TypeError] Environment} local newAlias : _ local annotatedTree : _ local originalTree : _ -} data TableRef = Tref (Annotation) (Name) | FunTref (Annotation) (ScalarExpr) | SubTref (Annotation) (QueryExpr) | JoinTref (Annotation) (TableRef) (Natural) (JoinType) ((Maybe JoinHint)) (TableRef) (OnExpr) | TableAlias (Annotation) (NameComponent) (TableRef) | FullAlias (Annotation) (NameComponent) (([NameComponent])) (TableRef) | TableRefParens (Annotation) (TableRef) | OdbcTableRef (Annotation) (TableRef) deriving ( Data,Eq,Show,Typeable) -- cata _sem_TableRef :: TableRef -> T_TableRef _sem_TableRef (Tref _ann _tbl) = (_sem_TableRef_Tref (_sem_Annotation _ann) (_sem_Name _tbl)) _sem_TableRef (FunTref _ann _fn) = (_sem_TableRef_FunTref (_sem_Annotation _ann) (_sem_ScalarExpr _fn)) _sem_TableRef (SubTref _ann _sel) = (_sem_TableRef_SubTref (_sem_Annotation _ann) (_sem_QueryExpr _sel)) _sem_TableRef (JoinTref _ann _tref0 _nat _joinType _joinHint _tref1 _onExpr) = (_sem_TableRef_JoinTref (_sem_Annotation _ann) (_sem_TableRef _tref0) _nat _joinType _joinHint (_sem_TableRef _tref1) (_sem_OnExpr _onExpr)) _sem_TableRef (TableAlias _ann _tb _tref) = (_sem_TableRef_TableAlias (_sem_Annotation _ann) _tb (_sem_TableRef _tref)) _sem_TableRef (FullAlias _ann _tb _cols _tref) = (_sem_TableRef_FullAlias (_sem_Annotation _ann) _tb _cols (_sem_TableRef _tref)) _sem_TableRef (TableRefParens _ann _tref) = (_sem_TableRef_TableRefParens (_sem_Annotation _ann) (_sem_TableRef _tref)) _sem_TableRef (OdbcTableRef _ann _tref) = (_sem_TableRef_OdbcTableRef (_sem_Annotation _ann) (_sem_TableRef _tref)) -- semantic domain type T_TableRef = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( TableRef,TableRef,Environment) data Inh_TableRef = Inh_TableRef {_cat_Inh_TableRef :: Catalog,_flags_Inh_TableRef :: TypeCheckFlags,_imCast_Inh_TableRef :: (Maybe TypeExtra)} data Syn_TableRef = Syn_TableRef {_annotatedTree_Syn_TableRef :: TableRef,_originalTree_Syn_TableRef :: TableRef,_upEnv_Syn_TableRef :: Environment} _wrap_TableRef :: T_TableRef -> Inh_TableRef -> Syn_TableRef _wrap_TableRef sem (Inh_TableRef _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_TableRef _lhsOannotatedTree _lhsOoriginalTree _lhsOupEnv)) _sem_TableRef_Tref :: T_Annotation -> T_Name -> T_TableRef _sem_TableRef_Tref ann_ tbl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _tblOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TableRef _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tblOcat :: Catalog _tblOflags :: TypeCheckFlags _tblOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tblIannotatedTree :: Name _tblIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 26618 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 26624 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 42, column 7) _eEnv = ({-# LINE 42 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} E.envCreateTrefEnvironment _lhsIcat (nameComponents _tblIoriginalTree) {-# LINE 26630 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 43, column 7) _tblOtpe = ({-# LINE 43 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} Left [] {-# LINE 26636 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 75, column 7) _lhsOannotatedTree = ({-# LINE 75 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} let mk (q,is) = FullAlias emptyAnnotation (Nmc q) (map Nmc is) $ wrapIfJoin _annotatedTree wrapIfJoin tr = case tr of JoinTref {} -> TableRefParens emptyAnnotation tr _ -> tr in maybe _annotatedTree mk _newAlias {-# LINE 26649 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 150, column 7) _newAlias = ({-# LINE 150 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} if tcfAddFullTablerefAliases _lhsIflags then do ((_,n),cs,_) <- either (const Nothing) Just $ catLookupTableAndAttrs _lhsIcat (nameComponents _tblIoriginalTree) return (T.unpack n, (map (T.unpack . fst) cs)) else Nothing {-# LINE 26661 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Tref _annIannotatedTree _tblIannotatedTree {-# LINE 26667 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Tref _annIoriginalTree _tblIoriginalTree {-# LINE 26673 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26679 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26685 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26691 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26697 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26703 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26709 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tblOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26715 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tblIannotatedTree,_tblIoriginalTree) = tbl_ _tblOcat _tblOflags _tblOimCast _tblOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRef_FunTref :: T_Annotation -> T_ScalarExpr -> T_TableRef _sem_TableRef_FunTref ann_ fn_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _fnOdownEnv :: Environment _fnOexpectedCast :: Bool _fnOexpectedType :: (Maybe TypeExtra) _fnOodbcFunction :: Bool _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _lhsOannotatedTree :: TableRef _fnOassignmentCastContext :: Bool _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _fnOcat :: Catalog _fnOflags :: TypeCheckFlags _fnOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _fnIannotatedTree :: ScalarExpr _fnIcolExprs :: ([(NameComponent,Maybe TypeExtra,ScalarExpr)]) _fnIoriginalTree :: ScalarExpr _fnIupType :: (Maybe TypeExtra) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 227, column 24) _fnOdownEnv = ({-# LINE 227 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} E.emptyEnvironment {-# LINE 26755 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 228, column 24) _fnOexpectedCast = ({-# LINE 228 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 26761 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 229, column 24) _fnOexpectedType = ({-# LINE 229 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Nothing {-# LINE 26767 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 230, column 24) _fnOodbcFunction = ({-# LINE 230 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} False {-# LINE 26773 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 26780 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 26786 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 71, column 7) _eEnv = ({-# LINE 71 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} Left [] {-# LINE 26792 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 75, column 7) _lhsOannotatedTree = ({-# LINE 75 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} let mk (q,is) = FullAlias emptyAnnotation (Nmc q) (map Nmc is) $ wrapIfJoin _annotatedTree wrapIfJoin tr = case tr of JoinTref {} -> TableRefParens emptyAnnotation tr _ -> tr in maybe _annotatedTree mk _newAlias {-# LINE 26805 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 135, column 7) _newAlias = ({-# LINE 135 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} if tcfAddFullTablerefAliases _lhsIflags then do env <- either (const Nothing) Just _eEnv cs <- either (const Nothing) Just $ E.envExpandStar Nothing env let qs = map (fst . fst) cs if all (== head qs) qs then return (T.unpack $ head qs, map (T.unpack . snd . fst) cs) else Nothing else Nothing {-# LINE 26820 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 843, column 24) _fnOassignmentCastContext = ({-# LINE 843 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 26826 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} FunTref _annIannotatedTree _fnIannotatedTree {-# LINE 26832 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} FunTref _annIoriginalTree _fnIoriginalTree {-# LINE 26838 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26844 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26850 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26856 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26862 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 26868 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 26874 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _fnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 26880 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _fnIannotatedTree,_fnIcolExprs,_fnIoriginalTree,_fnIupType) = fn_ _fnOassignmentCastContext _fnOcat _fnOdownEnv _fnOexpectedCast _fnOexpectedType _fnOflags _fnOimCast _fnOodbcFunction in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRef_SubTref :: T_Annotation -> T_QueryExpr -> T_TableRef _sem_TableRef_SubTref ann_ sel_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _selOexpectedType :: (Maybe [TypeExtra]) _lhsOannotatedTree :: TableRef _selOouterDownEnv :: (Maybe Environment) _selOassignmentCastContext :: Bool _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _selOcat :: Catalog _selOflags :: TypeCheckFlags _selOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _selIannotatedTree :: QueryExpr _selIoriginalTree :: QueryExpr _selIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 26918 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 26924 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 58, column 7) _eEnv = ({-# LINE 58 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} maybe (Left []) id $ fmap E.envSelectListEnvironment _selIupType {-# LINE 26931 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 60, column 7) _selOexpectedType = ({-# LINE 60 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} liftM (map snd) _selIupType {-# LINE 26937 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 75, column 7) _lhsOannotatedTree = ({-# LINE 75 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} let mk (q,is) = FullAlias emptyAnnotation (Nmc q) (map Nmc is) $ wrapIfJoin _annotatedTree wrapIfJoin tr = case tr of JoinTref {} -> TableRefParens emptyAnnotation tr _ -> tr in maybe _annotatedTree mk _newAlias {-# LINE 26950 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 135, column 7) _newAlias = ({-# LINE 135 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} if tcfAddFullTablerefAliases _lhsIflags then do env <- either (const Nothing) Just _eEnv cs <- either (const Nothing) Just $ E.envExpandStar Nothing env let qs = map (fst . fst) cs if all (== head qs) qs then return (T.unpack $ head qs, map (T.unpack . snd . fst) cs) else Nothing else Nothing {-# LINE 26965 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 93, column 13) _selOouterDownEnv = ({-# LINE 93 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Nothing {-# LINE 26971 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 844, column 24) _selOassignmentCastContext = ({-# LINE 844 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 26977 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SubTref _annIannotatedTree _selIannotatedTree {-# LINE 26983 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SubTref _annIoriginalTree _selIoriginalTree {-# LINE 26989 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 26995 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27001 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27007 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27013 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27019 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27025 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _selOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27031 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _selIannotatedTree,_selIoriginalTree,_selIupType) = sel_ _selOassignmentCastContext _selOcat _selOexpectedType _selOflags _selOimCast _selOouterDownEnv in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRef_JoinTref :: T_Annotation -> T_TableRef -> Natural -> JoinType -> (Maybe JoinHint) -> T_TableRef -> T_OnExpr -> T_TableRef _sem_TableRef_JoinTref ann_ tref0_ nat_ joinType_ joinHint_ tref1_ onExpr_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _onExprOdownEnv :: Environment _lhsOannotatedTree :: TableRef _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tref0Ocat :: Catalog _tref0Oflags :: TypeCheckFlags _tref0OimCast :: (Maybe TypeExtra) _tref1Ocat :: Catalog _tref1Oflags :: TypeCheckFlags _tref1OimCast :: (Maybe TypeExtra) _onExprOcat :: Catalog _onExprOflags :: TypeCheckFlags _onExprOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tref0IannotatedTree :: TableRef _tref0IoriginalTree :: TableRef _tref0IupEnv :: Environment _tref1IannotatedTree :: TableRef _tref1IoriginalTree :: TableRef _tref1IupEnv :: Environment _onExprIannotatedTree :: OnExpr _onExprIoriginalTree :: OnExpr -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 27083 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 27089 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 46, column 7) _eEnv = ({-# LINE 46 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} E.createJoinTrefEnvironment _lhsIcat _tref0IupEnv _tref1IupEnv (convertJoinType joinType_) $ case (joinType_,_onExprIoriginalTree) of (x,Nothing) | x /= Cross -> Nothing (_,Just (JoinUsing _ nms)) -> Just nms _ -> Just [] {-# LINE 27100 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 56, column 7) _onExprOdownEnv = ({-# LINE 56 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 27106 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 75, column 7) _lhsOannotatedTree = ({-# LINE 75 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} let mk (q,is) = FullAlias emptyAnnotation (Nmc q) (map Nmc is) $ wrapIfJoin _annotatedTree wrapIfJoin tr = case tr of JoinTref {} -> TableRefParens emptyAnnotation tr _ -> tr in maybe _annotatedTree mk _newAlias {-# LINE 27119 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 135, column 7) _newAlias = ({-# LINE 135 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} if tcfAddFullTablerefAliases _lhsIflags then do env <- either (const Nothing) Just _eEnv cs <- either (const Nothing) Just $ E.envExpandStar Nothing env let qs = map (fst . fst) cs if all (== head qs) qs then return (T.unpack $ head qs, map (T.unpack . snd . fst) cs) else Nothing else Nothing {-# LINE 27134 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} JoinTref _annIannotatedTree _tref0IannotatedTree nat_ joinType_ joinHint_ _tref1IannotatedTree _onExprIannotatedTree {-# LINE 27140 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} JoinTref _annIoriginalTree _tref0IoriginalTree nat_ joinType_ joinHint_ _tref1IoriginalTree _onExprIoriginalTree {-# LINE 27146 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27152 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27158 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27164 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27170 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tref0Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27176 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tref0Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27182 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tref0OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27188 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tref1Ocat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27194 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tref1Oflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27200 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tref1OimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27206 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _onExprOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27212 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _onExprOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27218 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _onExprOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27224 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tref0IannotatedTree,_tref0IoriginalTree,_tref0IupEnv) = tref0_ _tref0Ocat _tref0Oflags _tref0OimCast ( _tref1IannotatedTree,_tref1IoriginalTree,_tref1IupEnv) = tref1_ _tref1Ocat _tref1Oflags _tref1OimCast ( _onExprIannotatedTree,_onExprIoriginalTree) = onExpr_ _onExprOcat _onExprOdownEnv _onExprOflags _onExprOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRef_TableAlias :: T_Annotation -> NameComponent -> T_TableRef -> T_TableRef _sem_TableRef_TableAlias ann_ tb_ tref_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _lhsOannotatedTree :: TableRef _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _trefOcat :: Catalog _trefOflags :: TypeCheckFlags _trefOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _trefIannotatedTree :: TableRef _trefIoriginalTree :: TableRef _trefIupEnv :: Environment -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 27264 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 27270 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 68, column 7) _eEnv = ({-# LINE 68 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} Right $ E.createTrefAliasedEnvironment (ncStrT tb_) Nothing _trefIupEnv {-# LINE 27277 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 124, column 7) _lhsOannotatedTree = ({-# LINE 124 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} case _trefIannotatedTree of FullAlias _ _ c tr -> FullAlias emptyAnnotation tb_ c tr TableAlias _ _ tr -> TableAlias emptyAnnotation tb_ tr _ -> _annotatedTree {-# LINE 27286 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TableAlias _annIannotatedTree tb_ _trefIannotatedTree {-# LINE 27292 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TableAlias _annIoriginalTree tb_ _trefIoriginalTree {-# LINE 27298 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27304 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27310 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27316 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27322 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27328 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27334 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27340 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _trefIannotatedTree,_trefIoriginalTree,_trefIupEnv) = tref_ _trefOcat _trefOflags _trefOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRef_FullAlias :: T_Annotation -> NameComponent -> ([NameComponent]) -> T_TableRef -> T_TableRef _sem_TableRef_FullAlias ann_ tb_ cols_ tref_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _lhsOannotatedTree :: TableRef _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _trefOcat :: Catalog _trefOflags :: TypeCheckFlags _trefOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _trefIannotatedTree :: TableRef _trefIoriginalTree :: TableRef _trefIupEnv :: Environment -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 27377 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 27383 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 65, column 7) _eEnv = ({-# LINE 65 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} Right $ E.createTrefAliasedEnvironment (ncStrT tb_) (Just $ map ncStrT cols_) _trefIupEnv {-# LINE 27390 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 103, column 7) _lhsOannotatedTree = ({-# LINE 103 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} case _trefIannotatedTree of FullAlias _ t _ tr -> FullAlias emptyAnnotation (if tb_ == Nmc "" then t else tb_) cols_ tr TableAlias _ _ tr -> FullAlias emptyAnnotation tb_ cols_ tr _ -> _annotatedTree {-# LINE 27400 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} FullAlias _annIannotatedTree tb_ cols_ _trefIannotatedTree {-# LINE 27406 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} FullAlias _annIoriginalTree tb_ cols_ _trefIoriginalTree {-# LINE 27412 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27418 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27424 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27430 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27436 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27442 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27448 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27454 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _trefIannotatedTree,_trefIoriginalTree,_trefIupEnv) = tref_ _trefOcat _trefOflags _trefOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRef_TableRefParens :: T_Annotation -> T_TableRef -> T_TableRef _sem_TableRef_TableRefParens ann_ tref_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _lhsOannotatedTree :: TableRef _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _trefOcat :: Catalog _trefOflags :: TypeCheckFlags _trefOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _trefIannotatedTree :: TableRef _trefIoriginalTree :: TableRef _trefIupEnv :: Environment -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 27489 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 27495 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 63, column 7) _eEnv = ({-# LINE 63 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} Right $ _trefIupEnv {-# LINE 27501 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 75, column 7) _lhsOannotatedTree = ({-# LINE 75 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} let mk (q,is) = FullAlias emptyAnnotation (Nmc q) (map Nmc is) $ wrapIfJoin _annotatedTree wrapIfJoin tr = case tr of JoinTref {} -> TableRefParens emptyAnnotation tr _ -> tr in maybe _annotatedTree mk _newAlias {-# LINE 27514 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 135, column 7) _newAlias = ({-# LINE 135 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} if tcfAddFullTablerefAliases _lhsIflags then do env <- either (const Nothing) Just _eEnv cs <- either (const Nothing) Just $ E.envExpandStar Nothing env let qs = map (fst . fst) cs if all (== head qs) qs then return (T.unpack $ head qs, map (T.unpack . snd . fst) cs) else Nothing else Nothing {-# LINE 27529 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TableRefParens _annIannotatedTree _trefIannotatedTree {-# LINE 27535 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TableRefParens _annIoriginalTree _trefIoriginalTree {-# LINE 27541 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27547 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27553 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27559 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27565 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27571 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27577 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27583 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _trefIannotatedTree,_trefIoriginalTree,_trefIupEnv) = tref_ _trefOcat _trefOflags _trefOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRef_OdbcTableRef :: T_Annotation -> T_TableRef -> T_TableRef _sem_TableRef_OdbcTableRef ann_ tref_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOupEnv :: Environment _eEnv :: (Either [TypeError] Environment) _lhsOannotatedTree :: TableRef _lhsOoriginalTree :: TableRef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _trefOcat :: Catalog _trefOflags :: TypeCheckFlags _trefOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _trefIannotatedTree :: TableRef _trefIoriginalTree :: TableRef _trefIupEnv :: Environment -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 33, column 7) _annOtpe = ({-# LINE 33 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either Left (Right . mkTypeExtraNN . TrefType) (_eEnv >>= E.envExpandStar Nothing) {-# LINE 27618 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 36, column 7) _lhsOupEnv = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} either (const E.brokeEnvironment) id _eEnv {-# LINE 27624 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 63, column 7) _eEnv = ({-# LINE 63 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} Right $ _trefIupEnv {-# LINE 27630 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 75, column 7) _lhsOannotatedTree = ({-# LINE 75 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} let mk (q,is) = FullAlias emptyAnnotation (Nmc q) (map Nmc is) $ wrapIfJoin _annotatedTree wrapIfJoin tr = case tr of JoinTref {} -> TableRefParens emptyAnnotation tr _ -> tr in maybe _annotatedTree mk _newAlias {-# LINE 27643 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 135, column 7) _newAlias = ({-# LINE 135 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} if tcfAddFullTablerefAliases _lhsIflags then do env <- either (const Nothing) Just _eEnv cs <- either (const Nothing) Just $ E.envExpandStar Nothing env let qs = map (fst . fst) cs if all (== head qs) qs then return (T.unpack $ head qs, map (T.unpack . snd . fst) cs) else Nothing else Nothing {-# LINE 27658 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} OdbcTableRef _annIannotatedTree _trefIannotatedTree {-# LINE 27664 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} OdbcTableRef _annIoriginalTree _trefIoriginalTree {-# LINE 27670 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27676 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27682 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27688 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27694 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27700 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27706 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _trefOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27712 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _trefIannotatedTree,_trefIoriginalTree,_trefIupEnv) = tref_ _trefOcat _trefOflags _trefOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) -- TableRefList ------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : TableRefList originalTree : TableRefList upEnv : Environment alternatives: alternative Cons: child hd : TableRef child tl : TableRefList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type TableRefList = [TableRef] -- cata _sem_TableRefList :: TableRefList -> T_TableRefList _sem_TableRefList list = (Prelude.foldr _sem_TableRefList_Cons _sem_TableRefList_Nil (Prelude.map _sem_TableRef list)) -- semantic domain type T_TableRefList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( TableRefList,TableRefList,Environment) data Inh_TableRefList = Inh_TableRefList {_cat_Inh_TableRefList :: Catalog,_flags_Inh_TableRefList :: TypeCheckFlags,_imCast_Inh_TableRefList :: (Maybe TypeExtra)} data Syn_TableRefList = Syn_TableRefList {_annotatedTree_Syn_TableRefList :: TableRefList,_originalTree_Syn_TableRefList :: TableRefList,_upEnv_Syn_TableRefList :: Environment} _wrap_TableRefList :: T_TableRefList -> Inh_TableRefList -> Syn_TableRefList _wrap_TableRefList sem (Inh_TableRefList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_TableRefList _lhsOannotatedTree _lhsOoriginalTree _lhsOupEnv)) _sem_TableRefList_Cons :: T_TableRef -> T_TableRefList -> T_TableRefList _sem_TableRefList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOupEnv :: Environment _lhsOannotatedTree :: TableRefList _lhsOoriginalTree :: TableRefList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: TableRef _hdIoriginalTree :: TableRef _hdIupEnv :: Environment _tlIannotatedTree :: TableRefList _tlIoriginalTree :: TableRefList _tlIupEnv :: Environment -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 20, column 7) _lhsOupEnv = ({-# LINE 20 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} if E.isEmptyEnv _tlIupEnv then _hdIupEnv else either (error . show) id $ E.createJoinTrefEnvironment _lhsIcat _hdIupEnv _tlIupEnv E.Inner $ Just [] {-# LINE 27791 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 27797 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 27803 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 27809 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27815 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27821 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27827 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27833 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27839 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27845 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 27851 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree,_hdIupEnv) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree,_tlIupEnv) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) _sem_TableRefList_Nil :: T_TableRefList _sem_TableRefList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOupEnv :: Environment _lhsOannotatedTree :: TableRefList _lhsOoriginalTree :: TableRefList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag"(line 18, column 9) _lhsOupEnv = ({-# LINE 18 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/TableRefs.ag" #-} E.emptyEnvironment {-# LINE 27870 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 27876 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 27882 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 27888 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27894 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree,_lhsOupEnv))) -- TypeAttributeDef -------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : TypeAttributeDef originalTree : TypeAttributeDef alternatives: alternative TypeAttDef: child ann : Annotation child name : {NameComponent} child typ : TypeName visit 0: local annotatedTree : _ local originalTree : _ -} data TypeAttributeDef = TypeAttDef (Annotation) (NameComponent) (TypeName) deriving ( Data,Eq,Show,Typeable) -- cata _sem_TypeAttributeDef :: TypeAttributeDef -> T_TypeAttributeDef _sem_TypeAttributeDef (TypeAttDef _ann _name _typ) = (_sem_TypeAttributeDef_TypeAttDef (_sem_Annotation _ann) _name (_sem_TypeName _typ)) -- semantic domain type T_TypeAttributeDef = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( TypeAttributeDef,TypeAttributeDef) data Inh_TypeAttributeDef = Inh_TypeAttributeDef {_cat_Inh_TypeAttributeDef :: Catalog,_flags_Inh_TypeAttributeDef :: TypeCheckFlags,_imCast_Inh_TypeAttributeDef :: (Maybe TypeExtra)} data Syn_TypeAttributeDef = Syn_TypeAttributeDef {_annotatedTree_Syn_TypeAttributeDef :: TypeAttributeDef,_originalTree_Syn_TypeAttributeDef :: TypeAttributeDef} _wrap_TypeAttributeDef :: T_TypeAttributeDef -> Inh_TypeAttributeDef -> Syn_TypeAttributeDef _wrap_TypeAttributeDef sem (Inh_TypeAttributeDef _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_TypeAttributeDef _lhsOannotatedTree _lhsOoriginalTree)) _sem_TypeAttributeDef_TypeAttDef :: T_Annotation -> NameComponent -> T_TypeName -> T_TypeAttributeDef _sem_TypeAttributeDef_TypeAttDef ann_ name_ typ_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TypeAttributeDef _lhsOoriginalTree :: TypeAttributeDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 231, column 35) _annOtpe = ({-# LINE 231 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 27962 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TypeAttDef _annIannotatedTree name_ _typIannotatedTree {-# LINE 27968 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} TypeAttDef _annIoriginalTree name_ _typIoriginalTree {-# LINE 27974 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 27980 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 27986 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 27992 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 27998 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28004 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28010 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28016 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28022 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- TypeAttributeDefList ---------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : TypeAttributeDefList originalTree : TypeAttributeDefList alternatives: alternative Cons: child hd : TypeAttributeDef child tl : TypeAttributeDefList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type TypeAttributeDefList = [TypeAttributeDef] -- cata _sem_TypeAttributeDefList :: TypeAttributeDefList -> T_TypeAttributeDefList _sem_TypeAttributeDefList list = (Prelude.foldr _sem_TypeAttributeDefList_Cons _sem_TypeAttributeDefList_Nil (Prelude.map _sem_TypeAttributeDef list)) -- semantic domain type T_TypeAttributeDefList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( TypeAttributeDefList,TypeAttributeDefList) data Inh_TypeAttributeDefList = Inh_TypeAttributeDefList {_cat_Inh_TypeAttributeDefList :: Catalog,_flags_Inh_TypeAttributeDefList :: TypeCheckFlags,_imCast_Inh_TypeAttributeDefList :: (Maybe TypeExtra)} data Syn_TypeAttributeDefList = Syn_TypeAttributeDefList {_annotatedTree_Syn_TypeAttributeDefList :: TypeAttributeDefList,_originalTree_Syn_TypeAttributeDefList :: TypeAttributeDefList} _wrap_TypeAttributeDefList :: T_TypeAttributeDefList -> Inh_TypeAttributeDefList -> Syn_TypeAttributeDefList _wrap_TypeAttributeDefList sem (Inh_TypeAttributeDefList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_TypeAttributeDefList _lhsOannotatedTree _lhsOoriginalTree)) _sem_TypeAttributeDefList_Cons :: T_TypeAttributeDef -> T_TypeAttributeDefList -> T_TypeAttributeDefList _sem_TypeAttributeDefList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: TypeAttributeDefList _lhsOoriginalTree :: TypeAttributeDefList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: TypeAttributeDef _hdIoriginalTree :: TypeAttributeDef _tlIannotatedTree :: TypeAttributeDefList _tlIoriginalTree :: TypeAttributeDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 28093 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 28099 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28105 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28111 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28117 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28123 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28129 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28135 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28141 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28147 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_TypeAttributeDefList_Nil :: T_TypeAttributeDefList _sem_TypeAttributeDefList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: TypeAttributeDefList _lhsOoriginalTree :: TypeAttributeDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 28165 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 28171 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28177 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28183 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- TypeName ---------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : TypeName namedType : Maybe TypeExtra originalTree : TypeName alternatives: alternative SimpleTypeName: child ann : Annotation child tn : Name visit 0: local canType : {[NameComponent] -> [NameComponent]} local tpe : {Either [TypeError] TypeExtra} local annotatedTree : _ local originalTree : _ alternative PrecTypeName: child ann : Annotation child tn : Name child prec : {Integer} visit 0: local canType : {[NameComponent] -> [NameComponent]} local tpe : {Either [TypeError] TypeExtra} local annotatedTree : _ local originalTree : _ alternative Prec2TypeName: child ann : Annotation child tn : Name child prec : {Integer} child prec1 : {Integer} visit 0: local canType : {[NameComponent] -> [NameComponent]} local tpe : {Either [TypeError] TypeExtra} local annotatedTree : _ local originalTree : _ alternative ArrayTypeName: child ann : Annotation child typ : TypeName visit 0: local canType : {[NameComponent] -> [NameComponent]} local tpe : {Either [TypeError] TypeExtra} local annotatedTree : _ local originalTree : _ alternative SetOfTypeName: child ann : Annotation child typ : TypeName visit 0: local canType : {[NameComponent] -> [NameComponent]} local tpe : {Either [TypeError] TypeExtra} local annotatedTree : _ local originalTree : _ -} data TypeName = SimpleTypeName (Annotation) (Name) | PrecTypeName (Annotation) (Name) (Integer) | Prec2TypeName (Annotation) (Name) (Integer) (Integer) | ArrayTypeName (Annotation) (TypeName) | SetOfTypeName (Annotation) (TypeName) deriving ( Data,Eq,Show,Typeable) -- cata _sem_TypeName :: TypeName -> T_TypeName _sem_TypeName (SimpleTypeName _ann _tn) = (_sem_TypeName_SimpleTypeName (_sem_Annotation _ann) (_sem_Name _tn)) _sem_TypeName (PrecTypeName _ann _tn _prec) = (_sem_TypeName_PrecTypeName (_sem_Annotation _ann) (_sem_Name _tn) _prec) _sem_TypeName (Prec2TypeName _ann _tn _prec _prec1) = (_sem_TypeName_Prec2TypeName (_sem_Annotation _ann) (_sem_Name _tn) _prec _prec1) _sem_TypeName (ArrayTypeName _ann _typ) = (_sem_TypeName_ArrayTypeName (_sem_Annotation _ann) (_sem_TypeName _typ)) _sem_TypeName (SetOfTypeName _ann _typ) = (_sem_TypeName_SetOfTypeName (_sem_Annotation _ann) (_sem_TypeName _typ)) -- semantic domain type T_TypeName = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( TypeName,(Maybe TypeExtra),TypeName) data Inh_TypeName = Inh_TypeName {_cat_Inh_TypeName :: Catalog,_flags_Inh_TypeName :: TypeCheckFlags,_imCast_Inh_TypeName :: (Maybe TypeExtra)} data Syn_TypeName = Syn_TypeName {_annotatedTree_Syn_TypeName :: TypeName,_namedType_Syn_TypeName :: (Maybe TypeExtra),_originalTree_Syn_TypeName :: TypeName} _wrap_TypeName :: T_TypeName -> Inh_TypeName -> Syn_TypeName _wrap_TypeName sem (Inh_TypeName _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOnamedType,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_TypeName _lhsOannotatedTree _lhsOnamedType _lhsOoriginalTree)) _sem_TypeName_SimpleTypeName :: T_Annotation -> T_Name -> T_TypeName _sem_TypeName_SimpleTypeName ann_ tn_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOnamedType :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _tnOtpe :: (Either [TypeError] TypeExtra) _canType :: ([NameComponent] -> [NameComponent]) _tpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TypeName _lhsOoriginalTree :: TypeName _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tnOcat :: Catalog _tnOflags :: TypeCheckFlags _tnOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tnIannotatedTree :: Name _tnIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 36, column 10) _lhsOnamedType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either (const Nothing) Just _tpe {-# LINE 28302 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 37, column 10) _annOtpe = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either Left (const $ Left []) _tpe {-# LINE 28308 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 39, column 10) _tnOtpe = ({-# LINE 39 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} Left [] {-# LINE 28314 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 51, column 10) _canType = ({-# LINE 51 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} \x -> case x of [Nmc nc] -> [Nmc $ T.unpack $ canonicalizeTypeName (tcfDialect _lhsIflags) $ T.pack nc] _ -> x {-# LINE 28322 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 63, column 10) _tpe = ({-# LINE 63 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} mkTypeExtraNN `liftM` catLookupType _lhsIcat (_canType $ nameComponents _tnIoriginalTree) {-# LINE 28328 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SimpleTypeName _annIannotatedTree _tnIannotatedTree {-# LINE 28334 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SimpleTypeName _annIoriginalTree _tnIoriginalTree {-# LINE 28340 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28346 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28352 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28358 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28364 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28370 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28376 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28382 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28388 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tnIannotatedTree,_tnIoriginalTree) = tn_ _tnOcat _tnOflags _tnOimCast _tnOtpe in ( _lhsOannotatedTree,_lhsOnamedType,_lhsOoriginalTree))) _sem_TypeName_PrecTypeName :: T_Annotation -> T_Name -> Integer -> T_TypeName _sem_TypeName_PrecTypeName ann_ tn_ prec_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOnamedType :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _tnOtpe :: (Either [TypeError] TypeExtra) _canType :: ([NameComponent] -> [NameComponent]) _tpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TypeName _lhsOoriginalTree :: TypeName _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tnOcat :: Catalog _tnOflags :: TypeCheckFlags _tnOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tnIannotatedTree :: Name _tnIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 36, column 10) _lhsOnamedType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either (const Nothing) Just _tpe {-# LINE 28424 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 37, column 10) _annOtpe = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either Left (const $ Left []) _tpe {-# LINE 28430 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 39, column 10) _tnOtpe = ({-# LINE 39 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} Left [] {-# LINE 28436 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 51, column 10) _canType = ({-# LINE 51 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} \x -> case x of [Nmc nc] -> [Nmc $ T.unpack $ canonicalizeTypeName (tcfDialect _lhsIflags) $ T.pack nc] _ -> x {-# LINE 28444 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 77, column 9) _tpe = ({-# LINE 77 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} ((\t -> t{tePrecision = Just $ fromIntegral prec_}) . mkTypeExtraNN) `liftM` catLookupType _lhsIcat (nameComponents _tnIoriginalTree) {-# LINE 28451 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PrecTypeName _annIannotatedTree _tnIannotatedTree prec_ {-# LINE 28457 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} PrecTypeName _annIoriginalTree _tnIoriginalTree prec_ {-# LINE 28463 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28469 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28475 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28481 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28487 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28493 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28499 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28505 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28511 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tnIannotatedTree,_tnIoriginalTree) = tn_ _tnOcat _tnOflags _tnOimCast _tnOtpe in ( _lhsOannotatedTree,_lhsOnamedType,_lhsOoriginalTree))) _sem_TypeName_Prec2TypeName :: T_Annotation -> T_Name -> Integer -> Integer -> T_TypeName _sem_TypeName_Prec2TypeName ann_ tn_ prec_ prec1_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOnamedType :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _tnOtpe :: (Either [TypeError] TypeExtra) _canType :: ([NameComponent] -> [NameComponent]) _tpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TypeName _lhsOoriginalTree :: TypeName _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _tnOcat :: Catalog _tnOflags :: TypeCheckFlags _tnOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _tnIannotatedTree :: Name _tnIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 36, column 10) _lhsOnamedType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either (const Nothing) Just _tpe {-# LINE 28548 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 37, column 10) _annOtpe = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either Left (const $ Left []) _tpe {-# LINE 28554 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 39, column 10) _tnOtpe = ({-# LINE 39 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} Left [] {-# LINE 28560 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 51, column 10) _canType = ({-# LINE 51 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} \x -> case x of [Nmc nc] -> [Nmc $ T.unpack $ canonicalizeTypeName (tcfDialect _lhsIflags) $ T.pack nc] _ -> x {-# LINE 28568 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 80, column 9) _tpe = ({-# LINE 80 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} ((\t -> t{tePrecision = Just $ fromIntegral prec_, teScale = Just $ fromIntegral prec1_}) . mkTypeExtraNN) `liftM` catLookupType _lhsIcat (nameComponents _tnIoriginalTree) {-# LINE 28577 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Prec2TypeName _annIannotatedTree _tnIannotatedTree prec_ prec1_ {-# LINE 28583 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} Prec2TypeName _annIoriginalTree _tnIoriginalTree prec_ prec1_ {-# LINE 28589 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28595 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28601 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28607 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28613 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28619 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28625 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28631 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tnOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28637 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _tnIannotatedTree,_tnIoriginalTree) = tn_ _tnOcat _tnOflags _tnOimCast _tnOtpe in ( _lhsOannotatedTree,_lhsOnamedType,_lhsOoriginalTree))) _sem_TypeName_ArrayTypeName :: T_Annotation -> T_TypeName -> T_TypeName _sem_TypeName_ArrayTypeName ann_ typ_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOnamedType :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _canType :: ([NameComponent] -> [NameComponent]) _tpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TypeName _lhsOoriginalTree :: TypeName _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 36, column 10) _lhsOnamedType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either (const Nothing) Just _tpe {-# LINE 28672 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 37, column 10) _annOtpe = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either Left (const $ Left []) _tpe {-# LINE 28678 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 51, column 10) _canType = ({-# LINE 51 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} \x -> case x of [Nmc nc] -> [Nmc $ T.unpack $ canonicalizeTypeName (tcfDialect _lhsIflags) $ T.pack nc] _ -> x {-# LINE 28686 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 71, column 9) _tpe = ({-# LINE 71 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} maybe (Left []) Right _typInamedType >>= Right . (\t -> t{teType = ArrayType $ teType t}) {-# LINE 28693 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ArrayTypeName _annIannotatedTree _typIannotatedTree {-# LINE 28699 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ArrayTypeName _annIoriginalTree _typIoriginalTree {-# LINE 28705 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28711 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28717 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28723 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28729 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28735 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28741 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28747 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28753 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast in ( _lhsOannotatedTree,_lhsOnamedType,_lhsOoriginalTree))) _sem_TypeName_SetOfTypeName :: T_Annotation -> T_TypeName -> T_TypeName _sem_TypeName_SetOfTypeName ann_ typ_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOnamedType :: (Maybe TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _canType :: ([NameComponent] -> [NameComponent]) _tpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: TypeName _lhsOoriginalTree :: TypeName _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 36, column 10) _lhsOnamedType = ({-# LINE 36 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either (const Nothing) Just _tpe {-# LINE 28788 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 37, column 10) _annOtpe = ({-# LINE 37 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} either Left (const $ Left []) _tpe {-# LINE 28794 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 51, column 10) _canType = ({-# LINE 51 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} \x -> case x of [Nmc nc] -> [Nmc $ T.unpack $ canonicalizeTypeName (tcfDialect _lhsIflags) $ T.pack nc] _ -> x {-# LINE 28802 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag"(line 74, column 9) _tpe = ({-# LINE 74 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Misc.ag" #-} maybe (Left []) Right _typInamedType >>= Right . (\t -> t{teType = Pseudo $ SetOfType $ teType t}) {-# LINE 28809 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetOfTypeName _annIannotatedTree _typIannotatedTree {-# LINE 28815 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} SetOfTypeName _annIoriginalTree _typIoriginalTree {-# LINE 28821 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28827 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28833 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28839 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28845 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28851 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28857 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28863 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28869 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast in ( _lhsOannotatedTree,_lhsOnamedType,_lhsOoriginalTree))) -- TypeNameList ------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : TypeNameList originalTree : TypeNameList alternatives: alternative Cons: child hd : TypeName child tl : TypeNameList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type TypeNameList = [TypeName] -- cata _sem_TypeNameList :: TypeNameList -> T_TypeNameList _sem_TypeNameList list = (Prelude.foldr _sem_TypeNameList_Cons _sem_TypeNameList_Nil (Prelude.map _sem_TypeName list)) -- semantic domain type T_TypeNameList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( TypeNameList,TypeNameList) data Inh_TypeNameList = Inh_TypeNameList {_cat_Inh_TypeNameList :: Catalog,_flags_Inh_TypeNameList :: TypeCheckFlags,_imCast_Inh_TypeNameList :: (Maybe TypeExtra)} data Syn_TypeNameList = Syn_TypeNameList {_annotatedTree_Syn_TypeNameList :: TypeNameList,_originalTree_Syn_TypeNameList :: TypeNameList} _wrap_TypeNameList :: T_TypeNameList -> Inh_TypeNameList -> Syn_TypeNameList _wrap_TypeNameList sem (Inh_TypeNameList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_TypeNameList _lhsOannotatedTree _lhsOoriginalTree)) _sem_TypeNameList_Cons :: T_TypeName -> T_TypeNameList -> T_TypeNameList _sem_TypeNameList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: TypeNameList _lhsOoriginalTree :: TypeNameList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: TypeName _hdInamedType :: (Maybe TypeExtra) _hdIoriginalTree :: TypeName _tlIannotatedTree :: TypeNameList _tlIoriginalTree :: TypeNameList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 28941 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 28947 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 28953 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 28959 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28965 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28971 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28977 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 28983 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 28989 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 28995 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdInamedType,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_TypeNameList_Nil :: T_TypeNameList _sem_TypeNameList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: TypeNameList _lhsOoriginalTree :: TypeNameList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 29013 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 29019 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29025 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29031 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- VarDef ------------------------------------------------------ {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : VarDef originalTree : VarDef alternatives: alternative VarDef: child ann : Annotation child name : {NameComponent} child typ : TypeName child value : {Maybe ScalarExpr} visit 0: local annotatedTree : _ local originalTree : _ alternative ParamAlias: child ann : Annotation child name : {NameComponent} child i : {Integer} visit 0: local annotatedTree : _ local originalTree : _ alternative VarAlias: child ann : Annotation child name : {NameComponent} child aliased : Name visit 0: local annotatedTree : _ local originalTree : _ -} data VarDef = VarDef (Annotation) (NameComponent) (TypeName) ((Maybe ScalarExpr)) | ParamAlias (Annotation) (NameComponent) (Integer) | VarAlias (Annotation) (NameComponent) (Name) deriving ( Data,Eq,Show,Typeable) -- cata _sem_VarDef :: VarDef -> T_VarDef _sem_VarDef (VarDef _ann _name _typ _value) = (_sem_VarDef_VarDef (_sem_Annotation _ann) _name (_sem_TypeName _typ) _value) _sem_VarDef (ParamAlias _ann _name _i) = (_sem_VarDef_ParamAlias (_sem_Annotation _ann) _name _i) _sem_VarDef (VarAlias _ann _name _aliased) = (_sem_VarDef_VarAlias (_sem_Annotation _ann) _name (_sem_Name _aliased)) -- semantic domain type T_VarDef = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( VarDef,VarDef) data Inh_VarDef = Inh_VarDef {_cat_Inh_VarDef :: Catalog,_flags_Inh_VarDef :: TypeCheckFlags,_imCast_Inh_VarDef :: (Maybe TypeExtra)} data Syn_VarDef = Syn_VarDef {_annotatedTree_Syn_VarDef :: VarDef,_originalTree_Syn_VarDef :: VarDef} _wrap_VarDef :: T_VarDef -> Inh_VarDef -> Syn_VarDef _wrap_VarDef sem (Inh_VarDef _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_VarDef _lhsOannotatedTree _lhsOoriginalTree)) _sem_VarDef_VarDef :: T_Annotation -> NameComponent -> T_TypeName -> (Maybe ScalarExpr) -> T_VarDef _sem_VarDef_VarDef ann_ name_ typ_ value_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: VarDef _lhsOoriginalTree :: VarDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _typOcat :: Catalog _typOflags :: TypeCheckFlags _typOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _typIannotatedTree :: TypeName _typInamedType :: (Maybe TypeExtra) _typIoriginalTree :: TypeName -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 235, column 21) _annOtpe = ({-# LINE 235 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 29121 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} VarDef _annIannotatedTree name_ _typIannotatedTree value_ {-# LINE 29127 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} VarDef _annIoriginalTree name_ _typIoriginalTree value_ {-# LINE 29133 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29139 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29145 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29151 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29157 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29163 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29169 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29175 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _typOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29181 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _typIannotatedTree,_typInamedType,_typIoriginalTree) = typ_ _typOcat _typOflags _typOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_VarDef_ParamAlias :: T_Annotation -> NameComponent -> Integer -> T_VarDef _sem_VarDef_ParamAlias ann_ name_ i_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: VarDef _lhsOoriginalTree :: VarDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 232, column 25) _annOtpe = ({-# LINE 232 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 29208 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ParamAlias _annIannotatedTree name_ i_ {-# LINE 29214 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} ParamAlias _annIoriginalTree name_ i_ {-# LINE 29220 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29226 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29232 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29238 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29244 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29250 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_VarDef_VarAlias :: T_Annotation -> NameComponent -> T_Name -> T_VarDef _sem_VarDef_VarAlias ann_ name_ aliased_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _aliasedOtpe :: (Either [TypeError] TypeExtra) _annOtpe :: (Either [TypeError] TypeExtra) _lhsOannotatedTree :: VarDef _lhsOoriginalTree :: VarDef _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _aliasedOcat :: Catalog _aliasedOflags :: TypeCheckFlags _aliasedOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _aliasedIannotatedTree :: Name _aliasedIoriginalTree :: Name -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 233, column 23) _aliasedOtpe = ({-# LINE 233 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 29281 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag"(line 234, column 23) _annOtpe = ({-# LINE 234 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/Boilerplate.ag" #-} Left [] {-# LINE 29287 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} VarAlias _annIannotatedTree name_ _aliasedIannotatedTree {-# LINE 29293 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} VarAlias _annIoriginalTree name_ _aliasedIoriginalTree {-# LINE 29299 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29305 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29311 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29317 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29323 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29329 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _aliasedOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29335 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _aliasedOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29341 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _aliasedOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29347 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _aliasedIannotatedTree,_aliasedIoriginalTree) = aliased_ _aliasedOcat _aliasedOflags _aliasedOimCast _aliasedOtpe in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- VarDefList -------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : VarDefList originalTree : VarDefList alternatives: alternative Cons: child hd : VarDef child tl : VarDefList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type VarDefList = [VarDef] -- cata _sem_VarDefList :: VarDefList -> T_VarDefList _sem_VarDefList list = (Prelude.foldr _sem_VarDefList_Cons _sem_VarDefList_Nil (Prelude.map _sem_VarDef list)) -- semantic domain type T_VarDefList = Catalog -> TypeCheckFlags -> (Maybe TypeExtra) -> ( VarDefList,VarDefList) data Inh_VarDefList = Inh_VarDefList {_cat_Inh_VarDefList :: Catalog,_flags_Inh_VarDefList :: TypeCheckFlags,_imCast_Inh_VarDefList :: (Maybe TypeExtra)} data Syn_VarDefList = Syn_VarDefList {_annotatedTree_Syn_VarDefList :: VarDefList,_originalTree_Syn_VarDefList :: VarDefList} _wrap_VarDefList :: T_VarDefList -> Inh_VarDefList -> Syn_VarDefList _wrap_VarDefList sem (Inh_VarDefList _lhsIcat _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOoriginalTree) = sem _lhsIcat _lhsIflags _lhsIimCast in (Syn_VarDefList _lhsOannotatedTree _lhsOoriginalTree)) _sem_VarDefList_Cons :: T_VarDef -> T_VarDefList -> T_VarDefList _sem_VarDefList_Cons hd_ tl_ = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: VarDefList _lhsOoriginalTree :: VarDefList _hdOcat :: Catalog _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: VarDef _hdIoriginalTree :: VarDef _tlIannotatedTree :: VarDefList _tlIoriginalTree :: VarDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 29418 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 29424 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29430 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29436 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29442 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29448 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29454 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29460 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29466 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29472 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIoriginalTree) = hd_ _hdOcat _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIoriginalTree) = tl_ _tlOcat _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOoriginalTree))) _sem_VarDefList_Nil :: T_VarDefList _sem_VarDefList_Nil = (\ _lhsIcat _lhsIflags _lhsIimCast -> (let _lhsOannotatedTree :: VarDefList _lhsOoriginalTree :: VarDefList -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 29490 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 29496 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29502 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29508 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOoriginalTree))) -- WithQuery --------------------------------------------------- {- visit 0: inherited attributes: cat : Catalog catExtIncomp : Either [TypeError] Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : WithQuery colAliases : Maybe [NameComponent] name : Text originalTree : WithQuery upType : Maybe [(Text,TypeExtra)] alternatives: alternative WithQuery: child ann : Annotation child name : {NameComponent} child colAliases : {Maybe [NameComponent]} child ex : QueryExpr visit 0: local tpee : {Either [TypeError] [(Text,TypeExtra)]} local tpe : {Either [TypeError] TypeExtra} local annotatedTree : _ local originalTree : _ -} data WithQuery = WithQuery (Annotation) (NameComponent) ((Maybe [NameComponent])) (QueryExpr) deriving ( Data,Eq,Show,Typeable) -- cata _sem_WithQuery :: WithQuery -> T_WithQuery _sem_WithQuery (WithQuery _ann _name _colAliases _ex) = (_sem_WithQuery_WithQuery (_sem_Annotation _ann) _name _colAliases (_sem_QueryExpr _ex)) -- semantic domain type T_WithQuery = Catalog -> (Either [TypeError] Catalog) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( WithQuery,(Maybe [NameComponent]),Text,WithQuery,(Maybe [(Text,TypeExtra)])) data Inh_WithQuery = Inh_WithQuery {_cat_Inh_WithQuery :: Catalog,_catExtIncomp_Inh_WithQuery :: (Either [TypeError] Catalog),_flags_Inh_WithQuery :: TypeCheckFlags,_imCast_Inh_WithQuery :: (Maybe TypeExtra)} data Syn_WithQuery = Syn_WithQuery {_annotatedTree_Syn_WithQuery :: WithQuery,_colAliases_Syn_WithQuery :: (Maybe [NameComponent]),_name_Syn_WithQuery :: Text,_originalTree_Syn_WithQuery :: WithQuery,_upType_Syn_WithQuery :: (Maybe [(Text,TypeExtra)])} _wrap_WithQuery :: T_WithQuery -> Inh_WithQuery -> Syn_WithQuery _wrap_WithQuery sem (Inh_WithQuery _lhsIcat _lhsIcatExtIncomp _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOcolAliases,_lhsOname,_lhsOoriginalTree,_lhsOupType) = sem _lhsIcat _lhsIcatExtIncomp _lhsIflags _lhsIimCast in (Syn_WithQuery _lhsOannotatedTree _lhsOcolAliases _lhsOname _lhsOoriginalTree _lhsOupType)) _sem_WithQuery_WithQuery :: T_Annotation -> NameComponent -> (Maybe [NameComponent]) -> T_QueryExpr -> T_WithQuery _sem_WithQuery_WithQuery ann_ name_ colAliases_ ex_ = (\ _lhsIcat _lhsIcatExtIncomp _lhsIflags _lhsIimCast -> (let _lhsOname :: Text _lhsOannotatedTree :: WithQuery _lhsOcolAliases :: (Maybe [NameComponent]) _tpee :: (Either [TypeError] [(Text,TypeExtra)]) _tpe :: (Either [TypeError] TypeExtra) _lhsOupType :: (Maybe [(Text,TypeExtra)]) _exOouterDownEnv :: (Maybe Environment) _annOtpe :: (Either [TypeError] TypeExtra) _exOexpectedType :: (Maybe [TypeExtra]) _exOassignmentCastContext :: Bool _lhsOoriginalTree :: WithQuery _annOcat :: Catalog _annOflags :: TypeCheckFlags _annOimCast :: (Maybe TypeExtra) _exOcat :: Catalog _exOflags :: TypeCheckFlags _exOimCast :: (Maybe TypeExtra) _annIannotatedTree :: Annotation _annIoriginalTree :: Annotation _exIannotatedTree :: QueryExpr _exIoriginalTree :: QueryExpr _exIupType :: (Maybe [(Text,TypeExtra)]) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 56, column 9) _lhsOname = ({-# LINE 56 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} ncStrT name_ {-# LINE 29594 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 57, column 9) _lhsOannotatedTree = ({-# LINE 57 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} WithQuery _annIannotatedTree name_ colAliases_ _exIannotatedTree {-# LINE 29600 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 58, column 9) _lhsOcolAliases = ({-# LINE 58 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} colAliases_ {-# LINE 29606 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 62, column 9) _tpee = ({-# LINE 62 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} maybe (Left []) Right _exIupType {-# LINE 29612 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 64, column 9) _tpe = ({-# LINE 64 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM (mkTypeExtra . CompositeType) _tpee {-# LINE 29618 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 66, column 9) _lhsOupType = ({-# LINE 66 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} either (const Nothing) Just _tpee {-# LINE 29624 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 95, column 15) _exOouterDownEnv = ({-# LINE 95 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Nothing {-# LINE 29630 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 101, column 9) _annOtpe = ({-# LINE 101 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} Left [] {-# LINE 29636 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 102, column 9) _exOexpectedType = ({-# LINE 102 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} liftM (map snd) _exIupType {-# LINE 29642 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag"(line 845, column 27) _exOassignmentCastContext = ({-# LINE 845 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/ScalarExprs.ag" #-} False {-# LINE 29648 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WithQuery _annIannotatedTree name_ colAliases_ _exIannotatedTree {-# LINE 29654 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} WithQuery _annIoriginalTree name_ colAliases_ _exIoriginalTree {-# LINE 29660 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29666 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29672 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29678 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _annOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29684 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29690 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29696 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _exOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29702 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _annIannotatedTree,_annIoriginalTree) = ann_ _annOcat _annOflags _annOimCast _annOtpe ( _exIannotatedTree,_exIoriginalTree,_exIupType) = ex_ _exOassignmentCastContext _exOcat _exOexpectedType _exOflags _exOimCast _exOouterDownEnv in ( _lhsOannotatedTree,_lhsOcolAliases,_lhsOname,_lhsOoriginalTree,_lhsOupType))) -- WithQueryList ----------------------------------------------- {- visit 0: inherited attributes: cat : Catalog catExtIncomp : Either [TypeError] Catalog flags : TypeCheckFlags imCast : Maybe TypeExtra synthesized attributes: annotatedTree : WithQueryList catExtComp : Either [TypeError] Catalog originalTree : WithQueryList alternatives: alternative Cons: child hd : WithQuery child tl : WithQueryList visit 0: local annotatedTree : _ local originalTree : _ alternative Nil: visit 0: local annotatedTree : _ local originalTree : _ -} type WithQueryList = [WithQuery] -- cata _sem_WithQueryList :: WithQueryList -> T_WithQueryList _sem_WithQueryList list = (Prelude.foldr _sem_WithQueryList_Cons _sem_WithQueryList_Nil (Prelude.map _sem_WithQuery list)) -- semantic domain type T_WithQueryList = Catalog -> (Either [TypeError] Catalog) -> TypeCheckFlags -> (Maybe TypeExtra) -> ( WithQueryList,(Either [TypeError] Catalog),WithQueryList) data Inh_WithQueryList = Inh_WithQueryList {_cat_Inh_WithQueryList :: Catalog,_catExtIncomp_Inh_WithQueryList :: (Either [TypeError] Catalog),_flags_Inh_WithQueryList :: TypeCheckFlags,_imCast_Inh_WithQueryList :: (Maybe TypeExtra)} data Syn_WithQueryList = Syn_WithQueryList {_annotatedTree_Syn_WithQueryList :: WithQueryList,_catExtComp_Syn_WithQueryList :: (Either [TypeError] Catalog),_originalTree_Syn_WithQueryList :: WithQueryList} _wrap_WithQueryList :: T_WithQueryList -> Inh_WithQueryList -> Syn_WithQueryList _wrap_WithQueryList sem (Inh_WithQueryList _lhsIcat _lhsIcatExtIncomp _lhsIflags _lhsIimCast) = (let ( _lhsOannotatedTree,_lhsOcatExtComp,_lhsOoriginalTree) = sem _lhsIcat _lhsIcatExtIncomp _lhsIflags _lhsIimCast in (Syn_WithQueryList _lhsOannotatedTree _lhsOcatExtComp _lhsOoriginalTree)) _sem_WithQueryList_Cons :: T_WithQuery -> T_WithQueryList -> T_WithQueryList _sem_WithQueryList_Cons hd_ tl_ = (\ _lhsIcat _lhsIcatExtIncomp _lhsIflags _lhsIimCast -> (let _tlOcatExtIncomp :: (Either [TypeError] Catalog) _hdOcat :: Catalog _lhsOannotatedTree :: WithQueryList _lhsOoriginalTree :: WithQueryList _lhsOcatExtComp :: (Either [TypeError] Catalog) _hdOcatExtIncomp :: (Either [TypeError] Catalog) _hdOflags :: TypeCheckFlags _hdOimCast :: (Maybe TypeExtra) _tlOcat :: Catalog _tlOflags :: TypeCheckFlags _tlOimCast :: (Maybe TypeExtra) _hdIannotatedTree :: WithQuery _hdIcolAliases :: (Maybe [NameComponent]) _hdIname :: Text _hdIoriginalTree :: WithQuery _hdIupType :: (Maybe [(Text,TypeExtra)]) _tlIannotatedTree :: WithQueryList _tlIcatExtComp :: (Either [TypeError] Catalog) _tlIoriginalTree :: WithQueryList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 34, column 9) _tlOcatExtIncomp = ({-# LINE 34 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} do let getWithEx (WithQuery _ _ _ ex) = ex upType' <- maybe (Left . anErrs . ann . getWithEx $ _hdIannotatedTree) Right _hdIupType colTyPairs <- mapM (secondM typeToCatName) upType' colTyPairs' <- case _hdIcolAliases of Just alsNms -> do unless (length alsNms == length colTyPairs) $ Left [BadCatalogUpdate "number of aliases differs from number of expressions in the select"] return $ zip (map ncStrT alsNms) $ map snd colTyPairs Nothing -> return colTyPairs updateCatalog [CatCreateTable ("public", _hdIname ) colTyPairs'] =<< _lhsIcatExtIncomp {-# LINE 29795 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 47, column 9) _hdOcat = ({-# LINE 47 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} case _lhsIcatExtIncomp of Right catExtIncomp -> catExtIncomp Left _ -> _lhsIcat {-# LINE 29803 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIannotatedTree _tlIannotatedTree {-# LINE 29809 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} (:) _hdIoriginalTree _tlIoriginalTree {-# LINE 29815 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29821 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29827 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (up) _lhsOcatExtComp = ({-# LINE 29 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _tlIcatExtComp {-# LINE 29833 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOcatExtIncomp = ({-# LINE 24 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIcatExtIncomp {-# LINE 29839 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29845 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _hdOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29851 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOcat = ({-# LINE 116 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIcat {-# LINE 29857 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOflags = ({-# LINE 117 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIflags {-# LINE 29863 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- copy rule (down) _tlOimCast = ({-# LINE 129 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _lhsIimCast {-# LINE 29869 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) ( _hdIannotatedTree,_hdIcolAliases,_hdIname,_hdIoriginalTree,_hdIupType) = hd_ _hdOcat _hdOcatExtIncomp _hdOflags _hdOimCast ( _tlIannotatedTree,_tlIcatExtComp,_tlIoriginalTree) = tl_ _tlOcat _tlOcatExtIncomp _tlOflags _tlOimCast in ( _lhsOannotatedTree,_lhsOcatExtComp,_lhsOoriginalTree))) _sem_WithQueryList_Nil :: T_WithQueryList _sem_WithQueryList_Nil = (\ _lhsIcat _lhsIcatExtIncomp _lhsIflags _lhsIimCast -> (let _lhsOcatExtComp :: (Either [TypeError] Catalog) _lhsOannotatedTree :: WithQueryList _lhsOoriginalTree :: WithQueryList -- "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag"(line 52, column 9) _lhsOcatExtComp = ({-# LINE 52 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/QueryExprs/QueryExprs.ag" #-} _lhsIcatExtIncomp {-# LINE 29889 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _annotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 29895 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _originalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} [] {-# LINE 29901 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOannotatedTree = ({-# LINE 118 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _annotatedTree {-# LINE 29907 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) -- self rule _lhsOoriginalTree = ({-# LINE 119 "hssqlppp/src/Database/HsSqlPpp/Internals/TypeChecking/TypeChecking.ag" #-} _originalTree {-# LINE 29913 "hssqlppp/src/Database/HsSqlPpp/Internals/AstInternal.hs" #-} ) in ( _lhsOannotatedTree,_lhsOcatExtComp,_lhsOoriginalTree)))