drasil-gool-0.1.1.0: A framework for code and document generation for scientific software - GOOL SubPackage
Safe HaskellSafe-Inferred
LanguageHaskell2010

GOOL.Drasil

Description

re-export smart constructors for external code writing

Documentation

type GSProgram a = GS (a (Program a)) Source #

type SFile a = FS (a (File a)) Source #

type MSBody a = MS (a (Body a)) Source #

type MSBlock a = MS (a (Block a)) Source #

type VSType a = VS (a (Type a)) Source #

type SVariable a = VS (a (Variable a)) Source #

type SValue a = VS (a (Value a)) Source #

type VSFunction a = VS (a (Function a)) Source #

type MSStatement a = MS (a (Statement a)) Source #

type MSParameter a = MS (a (Parameter a)) Source #

type SMethod a = MS (a (Method a)) Source #

type CSStateVar a = CS (a (StateVar a)) Source #

type SClass a = CS (a (Class a)) Source #

type FSModule a = FS (a (Module a)) Source #

type NamedArgs r = [(SVariable r, SValue r)] Source #

class FileSym r => ProgramSym r where Source #

Associated Types

type Program r Source #

Methods

prog :: Label -> Label -> [SFile r] -> GSProgram r Source #

Instances

Instances details
ProgramSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Program CodeInfo Source #

ProgramSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Program CSharpCode Source #

ProgramSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Program CppSrcCode Source #

ProgramSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Program JavaCode Source #

ProgramSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Program PythonCode Source #

ProgramSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Program SwiftCode Source #

Pair p => ProgramSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Program (p CppSrcCode CppHdrCode) Source #

class ModuleSym r => FileSym r where Source #

Associated Types

type File r Source #

Methods

fileDoc :: FSModule r -> SFile r Source #

docMod :: String -> [String] -> String -> SFile r -> SFile r Source #

Instances

Instances details
FileSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type File CodeInfo Source #

FileSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type File CSharpCode Source #

FileSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type File CppHdrCode Source #

FileSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type File CppSrcCode Source #

FileSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type File JavaCode Source #

FileSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type File PythonCode Source #

FileSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type File SwiftCode Source #

Pair p => FileSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type File (p CppSrcCode CppHdrCode) Source #

class PermanenceSym r where Source #

Associated Types

type Permanence r Source #

Instances

Instances details
PermanenceSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Permanence CodeInfo Source #

PermanenceSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Permanence CSharpCode Source #

PermanenceSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Permanence CppHdrCode Source #

PermanenceSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Permanence CppSrcCode Source #

PermanenceSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Permanence JavaCode Source #

PermanenceSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Permanence PythonCode Source #

PermanenceSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Permanence SwiftCode Source #

Pair p => PermanenceSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Permanence (p CppSrcCode CppHdrCode) Source #

class BlockSym r => BodySym r where Source #

Associated Types

type Body r Source #

Methods

body :: [MSBlock r] -> MSBody r Source #

addComments :: Label -> MSBody r -> MSBody r Source #

Instances

Instances details
BodySym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Body CodeInfo Source #

BodySym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Body CSharpCode Source #

BodySym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Body CppHdrCode Source #

BodySym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Body CppSrcCode Source #

BodySym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Body JavaCode Source #

BodySym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Body PythonCode Source #

BodySym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Body SwiftCode Source #

Pair p => BodySym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Body (p CppSrcCode CppHdrCode) Source #

class StatementSym r => BlockSym r where Source #

Associated Types

type Block r Source #

Methods

block :: [MSStatement r] -> MSBlock r Source #

Instances

Instances details
BlockSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Block CodeInfo Source #

BlockSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Block CSharpCode Source #

BlockSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Block CppHdrCode Source #

BlockSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Block CppSrcCode Source #

BlockSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Block JavaCode Source #

BlockSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Block PythonCode Source #

BlockSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Block SwiftCode Source #

Pair p => BlockSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Block (p CppSrcCode CppHdrCode) Source #

class TypeSym r where Source #

Associated Types

type Type r Source #

Instances

Instances details
TypeSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Type CodeInfo Source #

TypeSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Type CSharpCode Source #

TypeSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Type CppHdrCode Source #

TypeSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Type CppSrcCode Source #

TypeSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Type JavaCode Source #

TypeSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Type PythonCode Source #

TypeSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Type SwiftCode Source #

Pair p => TypeSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Type (p CppSrcCode CppHdrCode) Source #

class TypeSym r => TypeElim r where Source #

Methods

getType :: r (Type r) -> CodeType Source #

getTypeString :: r (Type r) -> String Source #

Instances

Instances details
TypeElim CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

TypeElim CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

TypeElim CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

TypeElim CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

TypeElim JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

TypeElim PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

TypeElim SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => TypeElim (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class ThunkSym r Source #

Associated Types

type Thunk (r :: Type -> Type) Source #

Instances

Instances details
ThunkSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Thunk CodeInfo Source #

ThunkSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Thunk CSharpCode Source #

ThunkSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Thunk CppHdrCode Source #

ThunkSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Thunk CppSrcCode Source #

ThunkSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Thunk JavaCode Source #

ThunkSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Thunk PythonCode Source #

ThunkSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Thunk SwiftCode Source #

ThunkSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Thunk (p CppSrcCode CppHdrCode) Source #

class (VariableSym r, StatementSym r) => VectorDecl r where Source #

Instances

Instances details
VectorDecl CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

VectorDecl CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

VectorDecl CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

VectorDecl CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

VectorDecl JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

VectorDecl PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

VectorDecl SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => VectorDecl (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (VariableSym r, ThunkSym r) => VectorThunk r where Source #

Methods

vecThunk :: SVariable r -> VSThunk r Source #

class (ThunkSym r, ValueSym r) => VectorExpression r where Source #

Instances

Instances details
VectorExpression CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

VectorExpression CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

VectorExpression CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

VectorExpression CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

VectorExpression JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

VectorExpression PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

VectorExpression SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => VectorExpression (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (VariableSym r, ThunkSym r, StatementSym r) => ThunkAssign r where Source #

Instances

Instances details
ThunkAssign CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

ThunkAssign CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

ThunkAssign CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ThunkAssign CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ThunkAssign JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

ThunkAssign PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

ThunkAssign SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => ThunkAssign (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class ValueSym r => StatementSym r where Source #

Associated Types

type Statement r Source #

Instances

Instances details
StatementSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Statement CodeInfo Source #

StatementSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Statement CSharpCode Source #

StatementSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Statement CppHdrCode Source #

StatementSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Statement CppSrcCode Source #

StatementSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Statement JavaCode Source #

StatementSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Statement PythonCode Source #

StatementSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Statement SwiftCode Source #

Pair p => StatementSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Statement (p CppSrcCode CppHdrCode) Source #

class (VariableSym r, StatementSym r) => AssignStatement r where Source #

Methods

(&-=) :: SVariable r -> SValue r -> MSStatement r infixl 1 Source #

(&+=) :: SVariable r -> SValue r -> MSStatement r infixl 1 Source #

(&++) :: SVariable r -> MSStatement r infixl 8 Source #

(&--) :: SVariable r -> MSStatement r infixl 8 Source #

assign :: SVariable r -> SValue r -> MSStatement r Source #

Instances

Instances details
AssignStatement CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

AssignStatement CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

AssignStatement CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

AssignStatement CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

AssignStatement JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

AssignStatement PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

AssignStatement SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => AssignStatement (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

(&=) :: AssignStatement r => SVariable r -> SValue r -> MSStatement r infixr 1 Source #

class (VariableSym r, StatementSym r) => DeclStatement r where Source #

Instances

Instances details
DeclStatement CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

DeclStatement CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

DeclStatement CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

DeclStatement CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

DeclStatement JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

DeclStatement PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

DeclStatement SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => DeclStatement (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (VariableSym r, StatementSym r) => IOStatement r where Source #

Instances

Instances details
IOStatement CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

IOStatement CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

IOStatement CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

IOStatement CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

IOStatement JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

IOStatement PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

IOStatement SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => IOStatement (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Methods

print :: SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

printLn :: SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

printStr :: String -> MSStatement (p CppSrcCode CppHdrCode) Source #

printStrLn :: String -> MSStatement (p CppSrcCode CppHdrCode) Source #

printFile :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

printFileLn :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

printFileStr :: SValue (p CppSrcCode CppHdrCode) -> String -> MSStatement (p CppSrcCode CppHdrCode) Source #

printFileStrLn :: SValue (p CppSrcCode CppHdrCode) -> String -> MSStatement (p CppSrcCode CppHdrCode) Source #

getInput :: SVariable (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

discardInput :: MSStatement (p CppSrcCode CppHdrCode) Source #

getFileInput :: SValue (p CppSrcCode CppHdrCode) -> SVariable (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

discardFileInput :: SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

openFileR :: SVariable (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

openFileW :: SVariable (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

openFileA :: SVariable (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

closeFile :: SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

getFileInputLine :: SValue (p CppSrcCode CppHdrCode) -> SVariable (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

discardFileLine :: SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

getFileInputAll :: SValue (p CppSrcCode CppHdrCode) -> SVariable (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

class (VariableSym r, StatementSym r) => StringStatement r where Source #

Instances

Instances details
StringStatement CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

StringStatement CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

StringStatement CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

StringStatement CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

StringStatement JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

StringStatement PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

StringStatement SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => StringStatement (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (VariableSym r, StatementSym r) => FuncAppStatement r where Source #

Methods

inOutCall :: InOutCall r Source #

selfInOutCall :: InOutCall r Source #

extInOutCall :: Library -> InOutCall r Source #

Instances

Instances details
FuncAppStatement CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Methods

inOutCall :: InOutCall CodeInfo Source #

selfInOutCall :: InOutCall CodeInfo Source #

extInOutCall :: Library -> InOutCall CodeInfo Source #

FuncAppStatement CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

FuncAppStatement CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

FuncAppStatement CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

FuncAppStatement JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Methods

inOutCall :: InOutCall JavaCode Source #

selfInOutCall :: InOutCall JavaCode Source #

extInOutCall :: Library -> InOutCall JavaCode Source #

FuncAppStatement PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

FuncAppStatement SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => FuncAppStatement (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (BodySym r, VariableSym r) => ControlStatement r where Source #

Instances

Instances details
ControlStatement CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

ControlStatement CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

ControlStatement CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ControlStatement CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ControlStatement JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

ControlStatement PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

ControlStatement SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => ControlStatement (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Methods

break :: MSStatement (p CppSrcCode CppHdrCode) Source #

continue :: MSStatement (p CppSrcCode CppHdrCode) Source #

returnStmt :: SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

throw :: Label -> MSStatement (p CppSrcCode CppHdrCode) Source #

ifCond :: [(SValue (p CppSrcCode CppHdrCode), MSBody (p CppSrcCode CppHdrCode))] -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

switch :: SValue (p CppSrcCode CppHdrCode) -> [(SValue (p CppSrcCode CppHdrCode), MSBody (p CppSrcCode CppHdrCode))] -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

ifExists :: SValue (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

for :: MSStatement (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

forRange :: SVariable (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

forEach :: SVariable (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

while :: SValue (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

tryCatch :: MSBody (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> MSStatement (p CppSrcCode CppHdrCode) Source #

class TypeSym r => VariableSym r where Source #

Associated Types

type Variable r Source #

Instances

Instances details
VariableSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Variable CodeInfo Source #

VariableSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Variable CSharpCode Source #

VariableSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Variable CppHdrCode Source #

VariableSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Variable CppSrcCode Source #

VariableSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Variable JavaCode Source #

VariableSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Variable PythonCode Source #

VariableSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Variable SwiftCode Source #

Pair p => VariableSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Variable (p CppSrcCode CppHdrCode) Source #

class VariableSym r => VariableElim r where Source #

Methods

variableName :: r (Variable r) -> String Source #

variableType :: r (Variable r) -> r (Type r) Source #

Instances

Instances details
VariableElim CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

VariableElim CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

VariableElim CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

VariableElim CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

VariableElim JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

VariableElim PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

VariableElim SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => VariableElim (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

($->) :: VariableSym r => SVariable r -> SVariable r -> SVariable r infixl 9 Source #

class TypeSym r => ValueSym r where Source #

Associated Types

type Value r Source #

Methods

valueType :: r (Value r) -> r (Type r) Source #

Instances

Instances details
ValueSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Value CodeInfo Source #

ValueSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Value CSharpCode Source #

ValueSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Value CppHdrCode Source #

ValueSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Value CppSrcCode Source #

ValueSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Value JavaCode Source #

ValueSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Value PythonCode Source #

ValueSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Value SwiftCode Source #

Pair p => ValueSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Value (p CppSrcCode CppHdrCode) Source #

class ValueSym r => Literal r where Source #

Instances

Instances details
Literal CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Literal CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Literal CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Literal CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Literal JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Literal PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Literal SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => Literal (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (VariableSym r, ValueSym r) => VariableValue r where Source #

Methods

valueOf :: SVariable r -> SValue r Source #

class ValueSym r => CommandLineArgs r where Source #

Instances

Instances details
CommandLineArgs CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

CommandLineArgs CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

CommandLineArgs CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

CommandLineArgs CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

CommandLineArgs JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

CommandLineArgs PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

CommandLineArgs SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => CommandLineArgs (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class ValueSym r => NumericExpression r where Source #

Methods

(#~) :: SValue r -> SValue r infixl 8 Source #

(#/^) :: SValue r -> SValue r infixl 7 Source #

(#|) :: SValue r -> SValue r infixl 7 Source #

(#+) :: SValue r -> SValue r -> SValue r infixl 5 Source #

(#-) :: SValue r -> SValue r -> SValue r infixl 5 Source #

(#*) :: SValue r -> SValue r -> SValue r infixl 6 Source #

(#/) :: SValue r -> SValue r -> SValue r infixl 6 Source #

(#%) :: SValue r -> SValue r -> SValue r infixl 6 Source #

(#^) :: SValue r -> SValue r -> SValue r infixl 7 Source #

log :: SValue r -> SValue r Source #

ln :: SValue r -> SValue r Source #

exp :: SValue r -> SValue r Source #

sin :: SValue r -> SValue r Source #

cos :: SValue r -> SValue r Source #

tan :: SValue r -> SValue r Source #

csc :: SValue r -> SValue r Source #

sec :: SValue r -> SValue r Source #

cot :: SValue r -> SValue r Source #

arcsin :: SValue r -> SValue r Source #

arccos :: SValue r -> SValue r Source #

arctan :: SValue r -> SValue r Source #

floor :: SValue r -> SValue r Source #

ceil :: SValue r -> SValue r Source #

Instances

Instances details
NumericExpression CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

NumericExpression CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

NumericExpression CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

NumericExpression CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

NumericExpression JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

NumericExpression PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

NumericExpression SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => NumericExpression (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Methods

(#~) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#/^) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#|) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#+) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#-) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#*) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#/) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#%) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

(#^) :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

log :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

ln :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

exp :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

sin :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

cos :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

tan :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

csc :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

sec :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

cot :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

arcsin :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

arccos :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

arctan :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

floor :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

ceil :: SValue (p CppSrcCode CppHdrCode) -> SValue (p CppSrcCode CppHdrCode) Source #

class ValueSym r => BooleanExpression r where Source #

Methods

(?!) :: SValue r -> SValue r infixr 6 Source #

(?&&) :: SValue r -> SValue r -> SValue r infixl 2 Source #

(?||) :: SValue r -> SValue r -> SValue r infixl 1 Source #

Instances

Instances details
BooleanExpression CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

BooleanExpression CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

BooleanExpression CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

BooleanExpression CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

BooleanExpression JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

BooleanExpression PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

BooleanExpression SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => BooleanExpression (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class ValueSym r => Comparison r where Source #

Methods

(?<) :: SValue r -> SValue r -> SValue r infixl 4 Source #

(?<=) :: SValue r -> SValue r -> SValue r infixl 4 Source #

(?>) :: SValue r -> SValue r -> SValue r infixl 4 Source #

(?>=) :: SValue r -> SValue r -> SValue r infixl 4 Source #

(?==) :: SValue r -> SValue r -> SValue r infixl 3 Source #

(?!=) :: SValue r -> SValue r -> SValue r infixl 3 Source #

Instances

Instances details
Comparison CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Comparison CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Comparison CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Comparison CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Comparison JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Comparison PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Comparison SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => Comparison (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (VariableSym r, ValueSym r) => ValueExpression r where Source #

Instances

Instances details
ValueExpression CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

ValueExpression CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

ValueExpression CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ValueExpression CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ValueExpression JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

ValueExpression PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

ValueExpression SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => ValueExpression (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class ValueSym r => FunctionSym r where Source #

Associated Types

type Function r Source #

Methods

func :: Label -> VSType r -> [SValue r] -> VSFunction r Source #

objAccess :: SValue r -> VSFunction r -> SValue r Source #

Instances

Instances details
FunctionSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Function CodeInfo Source #

FunctionSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Function CSharpCode Source #

FunctionSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Function CppHdrCode Source #

FunctionSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Function CppSrcCode Source #

FunctionSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Function JavaCode Source #

FunctionSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Function PythonCode Source #

FunctionSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Function SwiftCode Source #

Pair p => FunctionSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Function (p CppSrcCode CppHdrCode) Source #

($.) :: FunctionSym r => SValue r -> VSFunction r -> SValue r infixl 9 Source #

class (ValueSym r, VariableSym r) => GetSet r where Source #

Methods

get :: SValue r -> SVariable r -> SValue r Source #

set :: SValue r -> SVariable r -> SValue r -> SValue r Source #

Instances

Instances details
GetSet CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

GetSet CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

GetSet CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

GetSet CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

GetSet JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

GetSet PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

GetSet SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => GetSet (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class ValueSym r => List r where Source #

Instances

Instances details
List CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

List CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

List CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

List CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

List JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

List PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

List SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => List (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

at :: List r => SValue r -> SValue r -> SValue r Source #

class BodySym r => StatePattern r where Source #

Methods

checkState :: Label -> [(SValue r, MSBody r)] -> MSBody r -> MSStatement r Source #

Instances

Instances details
StatePattern CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

StatePattern CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

StatePattern CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

StatePattern CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

StatePattern JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

StatePattern PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

StatePattern SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => StatePattern (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (StatementSym r, FunctionSym r) => ObserverPattern r where Source #

Instances

Instances details
ObserverPattern CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

ObserverPattern CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

ObserverPattern CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ObserverPattern CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

ObserverPattern JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

ObserverPattern PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

ObserverPattern SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => ObserverPattern (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class (BodySym r, VariableSym r) => StrategyPattern r where Source #

Methods

runStrategy :: Label -> [(Label, MSBody r)] -> Maybe (SValue r) -> Maybe (SVariable r) -> MSBlock r Source #

Instances

Instances details
StrategyPattern CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

StrategyPattern CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

StrategyPattern CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

StrategyPattern CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

StrategyPattern JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

StrategyPattern PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

StrategyPattern SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Pair p => StrategyPattern (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

class ScopeSym r where Source #

Associated Types

type Scope r Source #

Methods

private :: r (Scope r) Source #

public :: r (Scope r) Source #

Instances

Instances details
ScopeSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Scope CodeInfo Source #

ScopeSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Scope CSharpCode Source #

ScopeSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Scope CppHdrCode Source #

ScopeSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Scope CppSrcCode Source #

ScopeSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Scope JavaCode Source #

ScopeSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Scope PythonCode Source #

ScopeSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Scope SwiftCode Source #

Pair p => ScopeSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Scope (p CppSrcCode CppHdrCode) Source #

class VariableSym r => ParameterSym r where Source #

Associated Types

type Parameter r Source #

Instances

Instances details
ParameterSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Parameter CodeInfo Source #

ParameterSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Parameter CSharpCode Source #

ParameterSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Parameter CppHdrCode Source #

ParameterSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Parameter CppSrcCode Source #

ParameterSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Parameter JavaCode Source #

ParameterSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Parameter PythonCode Source #

ParameterSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Parameter SwiftCode Source #

Pair p => ParameterSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Parameter (p CppSrcCode CppHdrCode) Source #

class (BodySym r, ParameterSym r, ScopeSym r, PermanenceSym r) => MethodSym r where Source #

Associated Types

type Method r Source #

Methods

method :: Label -> r (Scope r) -> r (Permanence r) -> VSType r -> [MSParameter r] -> MSBody r -> SMethod r Source #

getMethod :: SVariable r -> SMethod r Source #

setMethod :: SVariable r -> SMethod r Source #

constructor :: [MSParameter r] -> Initializers r -> MSBody r -> SMethod r Source #

docMain :: MSBody r -> SMethod r Source #

function :: Label -> r (Scope r) -> VSType r -> [MSParameter r] -> MSBody r -> SMethod r Source #

mainFunction :: MSBody r -> SMethod r Source #

docFunc :: String -> [String] -> Maybe String -> SMethod r -> SMethod r Source #

inOutMethod :: Label -> r (Scope r) -> r (Permanence r) -> InOutFunc r Source #

docInOutMethod :: Label -> r (Scope r) -> r (Permanence r) -> DocInOutFunc r Source #

inOutFunc :: Label -> r (Scope r) -> InOutFunc r Source #

docInOutFunc :: Label -> r (Scope r) -> DocInOutFunc r Source #

Instances

Instances details
MethodSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Method CodeInfo Source #

MethodSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Method CSharpCode Source #

MethodSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Method CppHdrCode Source #

MethodSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Method CppSrcCode Source #

MethodSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Method JavaCode Source #

MethodSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Method PythonCode Source #

MethodSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Method SwiftCode Source #

Pair p => MethodSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Method (p CppSrcCode CppHdrCode) Source #

Methods

method :: Label -> p CppSrcCode CppHdrCode (Scope (p CppSrcCode CppHdrCode)) -> p CppSrcCode CppHdrCode (Permanence (p CppSrcCode CppHdrCode)) -> VSType (p CppSrcCode CppHdrCode) -> [MSParameter (p CppSrcCode CppHdrCode)] -> MSBody (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

getMethod :: SVariable (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

setMethod :: SVariable (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

constructor :: [MSParameter (p CppSrcCode CppHdrCode)] -> Initializers (p CppSrcCode CppHdrCode) -> MSBody (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

docMain :: MSBody (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

function :: Label -> p CppSrcCode CppHdrCode (Scope (p CppSrcCode CppHdrCode)) -> VSType (p CppSrcCode CppHdrCode) -> [MSParameter (p CppSrcCode CppHdrCode)] -> MSBody (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

mainFunction :: MSBody (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

docFunc :: String -> [String] -> Maybe String -> SMethod (p CppSrcCode CppHdrCode) -> SMethod (p CppSrcCode CppHdrCode) Source #

inOutMethod :: Label -> p CppSrcCode CppHdrCode (Scope (p CppSrcCode CppHdrCode)) -> p CppSrcCode CppHdrCode (Permanence (p CppSrcCode CppHdrCode)) -> InOutFunc (p CppSrcCode CppHdrCode) Source #

docInOutMethod :: Label -> p CppSrcCode CppHdrCode (Scope (p CppSrcCode CppHdrCode)) -> p CppSrcCode CppHdrCode (Permanence (p CppSrcCode CppHdrCode)) -> DocInOutFunc (p CppSrcCode CppHdrCode) Source #

inOutFunc :: Label -> p CppSrcCode CppHdrCode (Scope (p CppSrcCode CppHdrCode)) -> InOutFunc (p CppSrcCode CppHdrCode) Source #

docInOutFunc :: Label -> p CppSrcCode CppHdrCode (Scope (p CppSrcCode CppHdrCode)) -> DocInOutFunc (p CppSrcCode CppHdrCode) Source #

class (ScopeSym r, PermanenceSym r, VariableSym r) => StateVarSym r where Source #

Associated Types

type StateVar r Source #

Methods

stateVar :: r (Scope r) -> r (Permanence r) -> SVariable r -> CSStateVar r Source #

stateVarDef :: r (Scope r) -> r (Permanence r) -> SVariable r -> SValue r -> CSStateVar r Source #

constVar :: r (Scope r) -> SVariable r -> SValue r -> CSStateVar r Source #

Instances

Instances details
StateVarSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type StateVar CodeInfo Source #

StateVarSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type StateVar CSharpCode Source #

StateVarSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type StateVar CppHdrCode Source #

StateVarSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type StateVar CppSrcCode Source #

StateVarSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type StateVar JavaCode Source #

StateVarSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type StateVar PythonCode Source #

StateVarSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type StateVar SwiftCode Source #

Pair p => StateVarSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type StateVar (p CppSrcCode CppHdrCode) Source #

class (MethodSym r, StateVarSym r) => ClassSym r where Source #

Associated Types

type Class r Source #

Instances

Instances details
ClassSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Class CodeInfo Source #

ClassSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Class CSharpCode Source #

ClassSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Class CppHdrCode Source #

ClassSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Class CppSrcCode Source #

ClassSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Class JavaCode Source #

ClassSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Class PythonCode Source #

ClassSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Class SwiftCode Source #

Pair p => ClassSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Class (p CppSrcCode CppHdrCode) Source #

class ClassSym r => ModuleSym r where Source #

Associated Types

type Module r Source #

Methods

buildModule :: Label -> [Label] -> [SMethod r] -> [SClass r] -> FSModule r Source #

Instances

Instances details
ModuleSym CodeInfo Source # 
Instance details

Defined in GOOL.Drasil.CodeInfo

Associated Types

type Module CodeInfo Source #

ModuleSym CSharpCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CSharpRenderer

Associated Types

type Module CSharpCode Source #

ModuleSym CppHdrCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Module CppHdrCode Source #

ModuleSym CppSrcCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Module CppSrcCode Source #

ModuleSym JavaCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.JavaRenderer

Associated Types

type Module JavaCode Source #

ModuleSym PythonCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.PythonRenderer

Associated Types

type Module PythonCode Source #

ModuleSym SwiftCode Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.SwiftRenderer

Associated Types

type Module SwiftCode Source #

Pair p => ModuleSym (p CppSrcCode CppHdrCode) Source # 
Instance details

Defined in GOOL.Drasil.LanguageRenderer.CppRenderer

Associated Types

type Module (p CppSrcCode CppHdrCode) Source #

data ScopeTag Source #

Constructors

Pub 
Priv 

Instances

Instances details
Eq ScopeTag Source # 
Instance details

Defined in GOOL.Drasil.AST

data CodeType Source #

Instances

Instances details
Show CodeType Source # 
Instance details

Defined in GOOL.Drasil.CodeType

Eq CodeType Source # 
Instance details

Defined in GOOL.Drasil.CodeType

lensMStoVS :: Lens' MethodState ValueState Source #

onStateValue :: (a -> b) -> State s a -> State s b Source #

onCodeList :: Monad m => ([a] -> b) -> [m a] -> m b Source #

unCI :: CodeInfo a -> a Source #

unJC :: JavaCode a -> a Source #