| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Language.Drasil.Code.Imperative.Import
Synopsis
- codeType :: HasSpace c => c -> GenState CodeType
- spaceCodeType :: Space -> GenState CodeType
- publicFunc :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd))
- publicFuncProc :: forall {k} r (typ :: k) (val :: k) (var :: k) (param :: k) (vis :: k) (scope :: k) (stmt :: k) (bod :: k) (block :: k) (mthd :: k). (TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, ParameterSym r param var, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, BlockSym r block stmt, BodySym r bod block, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd))
- privateMethod :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd))
- privateFuncProc :: forall {k} r (typ :: k) (val :: k) (var :: k) (param :: k) (vis :: k) (scope :: k) (stmt :: k) (bod :: k) (block :: k) (mthd :: k). (TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, ParameterSym r param var, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, BlockSym r block stmt, BodySym r bod block, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd))
- publicInOutFunc :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd))
- publicInOutFuncProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (vis :: k) (scope :: k) (mthd :: k) (param :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd))
- privateInOutMethod :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd))
- privateInOutFuncProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (vis :: k) (scope :: k) (mthd :: k) (param :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd))
- genConstructor :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> Description -> [ParameterChunk] -> [MS (r block)] -> GenState (MS (r mthd))
- mkVar :: forall {k} r (typ :: k) (var :: k) (val :: k). (TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, SelfSym r var, VariableElim r var typ, VariableValue r var val) => CodeVarChunk -> GenState (VS (r var))
- mkVarProc :: forall {k} r (typ :: k) (var :: k). (TypeSym r typ, VariableSym r var typ) => CodeVarChunk -> GenState (VS (r var))
- mkVal :: forall {k} r (val :: k) (typ :: k) (var :: k) (binder :: k). (ValueSym r val typ, Argument r val, Literal r val typ, MathConstant r val, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, SelfSym r var, InternalValueExp r var val typ, OOValueExpression r var val typ, List r val, Reference r val, Set r val, TypeElim r typ, VariableElim r var typ) => CodeVarChunk -> GenState (VS (r val))
- mkValProc :: forall {k} r (val :: k) (typ :: k) (var :: k) (binder :: k). (NativeVector r val typ, TypeSym r typ, ValueSym r val typ, Literal r val typ, MathConstant r val, VariableSym r var typ, VariableValue r var val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, Argument r val, List r val, Reference r val, Set r val, TypeElim r typ) => CodeVarChunk -> GenState (VS (r val))
- convExpr :: forall {k} r (val :: k) (typ :: k) (var :: k) (binder :: k). (ValueSym r val typ, Argument r val, MathConstant r val, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, Literal r val typ, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, SelfSym r var, InternalValueExp r var val typ, OOValueExpression r var val typ, List r val, Reference r val, Set r val, TypeElim r typ, VariableElim r var typ) => CodeExpr -> GenState (VS (r val))
- convExprProc :: forall {k} r (typ :: k) (val :: k) (var :: k) (binder :: k). (TypeSym r typ, ValueSym r val typ, Literal r val typ, MathConstant r val, VariableSym r var typ, VariableValue r var val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, Argument r val, NativeVector r val typ, Reference r val, Set r val, List r val, TypeElim r typ) => CodeExpr -> GenState (VS (r val))
- convStmt :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (val :: k) (typ :: k) (var :: k) (binder :: k) (scope :: k). (BlockSym r block stmt, BodySym r bod block, ValueSym r val typ, Argument r val, MathConstant r val, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, Literal r val typ, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, SelfSym r var, InternalValueExp r var val typ, OOValueExpression r var val typ, Array r var val, List r val, ListStatement r stmt val, Reference r val, Set r val, ScopeSym r scope, MultiStatement r stmt, ValueStatement r stmt val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, DeclStatement r bod stmt var scope val, TypeElim r typ, VariableElim r var typ) => FuncStmt -> GenState (MS (r stmt))
- convStmtProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (scope :: k) (var :: k) (binder :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, ValueSym r val typ, Literal r val typ, MathConstant r val, ScopeSym r scope, VariableSym r var typ, VariableValue r var val, BooleanExpression r val, NumericExpression r val, ValueExpression r var val binder typ, Comparison r val, Argument r val, Array r var val, List r val, ListStatement r stmt val, NativeVector r val typ, Reference r val, Set r val, MultiStatement r stmt, ValueStatement r stmt val, DeclStatement r bod stmt var scope val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, TypeElim r typ, VariableElim r var typ) => FuncStmt -> GenState (MS (r stmt))
- genModDef :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Mod -> GenState (FS (r file))
- genModDefProc :: (NativeVector r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, VariableValue r var val, DeclStatement r bod stmt var scope val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, PrintFile r stmt val, Argument r val, Array r var val, List r val, Reference r val, Set r val, ProcProg r prg file mod mthd vis param bod block stmt var scope val binder typ, TypeElim r typ) => Mod -> GenState (FS (r file))
- genModFuncs :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Mod -> [GenState (MS (r mthd))]
- genModFuncsProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (binder :: k) (param :: k) (vis :: k) (scope :: k) (mthd :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, ValueSym r val typ, Literal r val typ, NativeVector r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, VariableSym r var typ, VariableValue r var val, ParameterSym r param var, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, ValueStatement r stmt val, DeclStatement r bod stmt var scope val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, PrintFile r stmt val, Argument r val, Array r var val, List r val, ListStatement r stmt val, Reference r val, MethodSym r mthd vis param bod var typ, Set r val, TypeElim r typ, VariableElim r var typ) => Mod -> [GenState (MS (r mthd))]
- genModClasses :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Mod -> [GenState (CS (r cls))]
- readData :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (val :: k) (typ :: k) (var :: k) (binder :: k) (scope :: k). (BlockSym r block stmt, BodySym r bod block, ValueSym r val typ, Argument r val, Literal r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, SelfSym r var, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, InternalValueExp r var val typ, ValueExpression r var val binder typ, OOValueExpression r var val typ, List r val, ListStatement r stmt val, Reference r val, Set r val, ScopeSym r scope, DeclStatement r bod stmt var scope val, OODeclStatement r stmt var scope val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, TypeElim r typ, VariableElim r var typ) => DataDesc -> GenState [MS (r block)]
- readDataProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (binder :: k) (scope :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, ValueSym r val typ, Literal r val typ, NativeVector r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, VariableSym r var typ, VariableValue r var val, ScopeSym r scope, DeclStatement r bod stmt var scope val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, Argument r val, List r val, ListStatement r stmt val, Reference r val, Set r val, TypeElim r typ) => DataDesc -> GenState [MS (r block)]
- renderC :: (IsChunk c, HasSymbol c) => c -> Constraint CodeExpr -> CodeExpr
Documentation
publicFunc :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a public function.
publicFuncProc :: forall {k} r (typ :: k) (val :: k) (var :: k) (param :: k) (vis :: k) (scope :: k) (stmt :: k) (bod :: k) (block :: k) (mthd :: k). (TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, ParameterSym r param var, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, BlockSym r block stmt, BodySym r bod block, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a public function.
privateMethod :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a private method.
privateFuncProc :: forall {k} r (typ :: k) (val :: k) (var :: k) (param :: k) (vis :: k) (scope :: k) (stmt :: k) (bod :: k) (block :: k) (mthd :: k). (TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, ParameterSym r param var, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, BlockSym r block stmt, BodySym r bod block, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> VS (r typ) -> Description -> [ParameterChunk] -> Maybe Description -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a private function.
publicInOutFunc :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a public function, defined by its inputs and outputs.
publicInOutFuncProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (vis :: k) (scope :: k) (mthd :: k) (param :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a public function, defined by its inputs and outputs.
privateInOutMethod :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a private method, defined by its inputs and outputs.
privateInOutFuncProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (vis :: k) (scope :: k) (mthd :: k) (param :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, Literal r val typ, VariableSym r var typ, VariableValue r var val, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, DeclStatement r bod stmt var scope val, FileHandling r stmt var val, PrintFile r stmt val, MethodSym r mthd vis param bod var typ, VariableElim r var typ) => Label -> Description -> [CodeVarChunk] -> [CodeVarChunk] -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a private function, defined by its inputs and outputs.
genConstructor :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Label -> Description -> [ParameterChunk] -> [MS (r block)] -> GenState (MS (r mthd)) Source #
Generates a constructor.
mkVar :: forall {k} r (typ :: k) (var :: k) (val :: k). (TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, SelfSym r var, VariableElim r var typ, VariableValue r var val) => CodeVarChunk -> GenState (VS (r var)) Source #
Generates a GOOL Variable for a variable represented by a CodeVarChunk.
mkVarProc :: forall {k} r (typ :: k) (var :: k). (TypeSym r typ, VariableSym r var typ) => CodeVarChunk -> GenState (VS (r var)) Source #
Generates a GOOL Variable for a variable represented by a CodeVarChunk.
mkVal :: forall {k} r (val :: k) (typ :: k) (var :: k) (binder :: k). (ValueSym r val typ, Argument r val, Literal r val typ, MathConstant r val, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, SelfSym r var, InternalValueExp r var val typ, OOValueExpression r var val typ, List r val, Reference r val, Set r val, TypeElim r typ, VariableElim r var typ) => CodeVarChunk -> GenState (VS (r val)) Source #
Generates a GOOL Value for a variable represented by a CodeVarChunk.
mkValProc :: forall {k} r (val :: k) (typ :: k) (var :: k) (binder :: k). (NativeVector r val typ, TypeSym r typ, ValueSym r val typ, Literal r val typ, MathConstant r val, VariableSym r var typ, VariableValue r var val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, Argument r val, List r val, Reference r val, Set r val, TypeElim r typ) => CodeVarChunk -> GenState (VS (r val)) Source #
Generates a GOOL Value for a variable represented by a CodeVarChunk.
convExpr :: forall {k} r (val :: k) (typ :: k) (var :: k) (binder :: k). (ValueSym r val typ, Argument r val, MathConstant r val, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, Literal r val typ, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, SelfSym r var, InternalValueExp r var val typ, OOValueExpression r var val typ, List r val, Reference r val, Set r val, TypeElim r typ, VariableElim r var typ) => CodeExpr -> GenState (VS (r val)) Source #
Converts an Expr to a GOOL Value.
convExprProc :: forall {k} r (typ :: k) (val :: k) (var :: k) (binder :: k). (TypeSym r typ, ValueSym r val typ, Literal r val typ, MathConstant r val, VariableSym r var typ, VariableValue r var val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, Argument r val, NativeVector r val typ, Reference r val, Set r val, List r val, TypeElim r typ) => CodeExpr -> GenState (VS (r val)) Source #
Converts an Expr to a GOOL Value.
convStmt :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (val :: k) (typ :: k) (var :: k) (binder :: k) (scope :: k). (BlockSym r block stmt, BodySym r bod block, ValueSym r val typ, Argument r val, MathConstant r val, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, Literal r val typ, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, SelfSym r var, InternalValueExp r var val typ, OOValueExpression r var val typ, Array r var val, List r val, ListStatement r stmt val, Reference r val, Set r val, ScopeSym r scope, MultiStatement r stmt, ValueStatement r stmt val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, DeclStatement r bod stmt var scope val, TypeElim r typ, VariableElim r var typ) => FuncStmt -> GenState (MS (r stmt)) Source #
Converts a FuncStmt to a GOOL Statement.
convStmtProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (scope :: k) (var :: k) (binder :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, ValueSym r val typ, Literal r val typ, MathConstant r val, ScopeSym r scope, VariableSym r var typ, VariableValue r var val, BooleanExpression r val, NumericExpression r val, ValueExpression r var val binder typ, Comparison r val, Argument r val, Array r var val, List r val, ListStatement r stmt val, NativeVector r val typ, Reference r val, Set r val, MultiStatement r stmt, ValueStatement r stmt val, DeclStatement r bod stmt var scope val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, TypeElim r typ, VariableElim r var typ) => FuncStmt -> GenState (MS (r stmt)) Source #
Converts a FuncStmt to a GOOL Statement.
genModDef :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Mod -> GenState (FS (r file)) Source #
Converts a Mod to GOOL.
genModDefProc :: (NativeVector r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, VariableValue r var val, DeclStatement r bod stmt var scope val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, PrintFile r stmt val, Argument r val, Array r var val, List r val, Reference r val, Set r val, ProcProg r prg file mod mthd vis param bod block stmt var scope val binder typ, TypeElim r typ) => Mod -> GenState (FS (r file)) Source #
Converts a Mod to GOOL.
genModFuncs :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Mod -> [GenState (MS (r mthd))] Source #
Converts a Mod's functions to GOOL.
genModFuncsProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (binder :: k) (param :: k) (vis :: k) (scope :: k) (mthd :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, ValueSym r val typ, Literal r val typ, NativeVector r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, VariableSym r var typ, VariableValue r var val, ParameterSym r param var, VisibilitySym r vis, ScopeSym r scope, MultiStatement r stmt, ValueStatement r stmt val, DeclStatement r bod stmt var scope val, AssignStatement r stmt var val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, PrintFile r stmt val, Argument r val, Array r var val, List r val, ListStatement r stmt val, Reference r val, MethodSym r mthd vis param bod var typ, Set r val, TypeElim r typ, VariableElim r var typ) => Mod -> [GenState (MS (r mthd))] Source #
Converts a Mod's functions to GOOL.
genModClasses :: OOProg r prg file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ => Mod -> [GenState (CS (r cls))] Source #
Converts a Mod's classes to GOOL.
readData :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (val :: k) (typ :: k) (var :: k) (binder :: k) (scope :: k). (BlockSym r block stmt, BodySym r bod block, ValueSym r val typ, Argument r val, Literal r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, SelfSym r var, TypeSym r typ, OOTypeSym r typ, VariableSym r var typ, OOVariableSym r var val typ, VariableValue r var val, InternalValueExp r var val typ, ValueExpression r var val binder typ, OOValueExpression r var val typ, List r val, ListStatement r stmt val, Reference r val, Set r val, ScopeSym r scope, DeclStatement r bod stmt var scope val, OODeclStatement r stmt var scope val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, TypeElim r typ, VariableElim r var typ) => DataDesc -> GenState [MS (r block)] Source #
Read from a data description into an 'MS block' of 'MS Statement's.
readDataProc :: forall {k} r (block :: k) (stmt :: k) (bod :: k) (typ :: k) (val :: k) (var :: k) (binder :: k) (scope :: k). (BlockSym r block stmt, BodySym r bod block, TypeSym r typ, ValueSym r val typ, Literal r val typ, NativeVector r val typ, MathConstant r val, BooleanExpression r val, Comparison r val, NumericExpression r val, ValueExpression r var val binder typ, VariableSym r var typ, VariableValue r var val, ScopeSym r scope, DeclStatement r bod stmt var scope val, ControlStatement r bod stmt var val, StringStatement r stmt var val, FileHandling r stmt var val, ReadFile r stmt var val, Argument r val, List r val, ListStatement r stmt val, Reference r val, Set r val, TypeElim r typ) => DataDesc -> GenState [MS (r block)] Source #
Read from a data description into an 'MS block' of 'MS Statement's.
renderC :: (IsChunk c, HasSymbol c) => c -> Constraint CodeExpr -> CodeExpr Source #
Converts a Constraint to a CodeExpr.