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

Drasil.Shared.RendererClassesCommon

Documentation

class (AssignStatement r smt, DeclStatement r smt, IOStatement r smt, StringStatement r smt, FuncAppStatement r smt, CommentStatement r smt, ControlStatement r smt, Argument r, Literal r, MathConstant r, VariableValue r, CommandLineArgs r, NumericExpression r, BooleanExpression r, Comparison r, IndexTranslator r, List r smt, InternalList r, VariableElim r, BinderElim r, RenderBlock r, BlockElim r, RenderBody r, BodyElim r, InternalListFunc r, RenderFunction r, FunctionElim r, OpElim r, RenderParam r, ParamElim r, RenderVisibility r vis, VisibilityElim r vis, InternalAssignStmt r smt, InternalIOStmt r smt, InternalControlStmt r smt, RenderStatement r smt, StatementElim r smt, RenderType r, RenderValue r, ValueElim r, RenderVariable r, InternalVarElim r, InternalBinderElim r, ImportSym r, UnaryOpSym r, BinaryOpSym r, BlockCommentSym r, BlockCommentElim r, ValueExpression r, RenderMethod r md, MethodElim r md, ParameterSym r, ScopeElim r) => CommonRenderSym r vis smt md Source #

class ImportSym r where Source #

Instances

Instances details
ImportSym CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

ImportSym CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ImportSym CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ImportSym JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

ImportSym PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

ImportSym SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

ImportSym JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

ImportSym MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderBody r where Source #

Methods

multiBody :: [MS (r Body)] -> MS (r Body) Source #

Instances

Instances details
RenderBody CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderBody CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderBody CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderBody JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderBody PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderBody SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderBody JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderBody MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderBlock r where Source #

Methods

multiBlock :: [MS (r Block)] -> MS (r Block) Source #

Instances

Instances details
RenderBlock CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderBlock CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderBlock CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderBlock JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderBlock PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderBlock SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderBlock JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderBlock MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderType r where Source #

Methods

multiType :: [VS (r TypeData)] -> VS (r TypeData) Source #

Instances

Instances details
RenderType CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderType CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderType CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderType JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderType PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderType SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderType JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderType MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

type VSUnOp a = VS (a OpData) Source #

class UnaryOpSym r where Source #

Instances

Instances details
UnaryOpSym CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

UnaryOpSym CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

UnaryOpSym CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

UnaryOpSym JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

UnaryOpSym PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

UnaryOpSym SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

UnaryOpSym JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

UnaryOpSym MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

type VSBinOp a = VS (a OpData) Source #

class BinaryOpSym r where Source #

Instances

Instances details
BinaryOpSym CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

BinaryOpSym CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

BinaryOpSym CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

BinaryOpSym JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

BinaryOpSym PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

BinaryOpSym SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

BinaryOpSym JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

BinaryOpSym MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class OpElim r where Source #

Instances

Instances details
OpElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

OpElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

OpElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

OpElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

OpElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

OpElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

OpElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

OpElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderVariable r where Source #

Instances

Instances details
RenderVariable CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderVariable CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderVariable CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderVariable JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderVariable PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderVariable SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderVariable JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderVariable MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class InternalVarElim r where Source #

Instances

Instances details
InternalVarElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalVarElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalVarElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalVarElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalVarElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalVarElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

InternalVarElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

InternalVarElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class InternalBinderElim r where Source #

Methods

binderElim :: r BinderD -> Doc Source #

Instances

Instances details
InternalBinderElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalBinderElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalBinderElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalBinderElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalBinderElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalBinderElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

InternalBinderElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

InternalBinderElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderValue r where Source #

Methods

inputFunc :: SValue r Source #

printFunc :: SValue r Source #

printLnFunc :: SValue r Source #

printFileFunc :: SValue r -> SValue r Source #

printFileLnFunc :: SValue r -> SValue r Source #

cast :: VS (r TypeData) -> SValue r -> SValue r Source #

call :: Maybe Library -> Maybe Doc -> MixedCall r Source #

Very generic internal function for generating calls, to reduce repeated code throughout generators. Parameters are: maybe name of external module, maybe Doc for object variable (including separator between object and function) for method calls.

valFromData :: Maybe Int -> Maybe Integer -> VS (r TypeData) -> Doc -> SValue r Source #

Instances

Instances details
RenderValue CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderValue CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderValue CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderValue JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderValue PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderValue SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderValue JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderValue MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class ValueElim r where Source #

Instances

Instances details
ValueElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

ValueElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ValueElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ValueElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

ValueElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

ValueElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

ValueElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

ValueElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class InternalListFunc r where Source #

Methods

listAccessFunc :: VS (r TypeData) -> SValue r -> VS (r FuncData) Source #

List, Index

Instances

Instances details
InternalListFunc CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalListFunc CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalListFunc CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalListFunc JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalListFunc PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalListFunc SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

InternalListFunc JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

InternalListFunc MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderFunction r where Source #

Methods

funcFromData :: Doc -> VS (r TypeData) -> VS (r FuncData) Source #

Instances

Instances details
RenderFunction CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderFunction CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderFunction CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderFunction JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderFunction PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderFunction SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderFunction JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderFunction MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class FunctionElim r where Source #

Instances

Instances details
FunctionElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

FunctionElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

FunctionElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

FunctionElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

FunctionElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

FunctionElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

FunctionElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

FunctionElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class InternalAssignStmt r smt | r -> smt where Source #

Methods

multiAssign :: [SVariable r] -> [SValue r] -> MS (r smt) Source #

Instances

Instances details
InternalAssignStmt CSharpCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalAssignStmt CppHdrCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalAssignStmt CppSrcCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalAssignStmt JavaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalAssignStmt PythonCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalAssignStmt SwiftCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

InternalAssignStmt JuliaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

InternalAssignStmt MatlabCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

Pair p => InternalAssignStmt (p CppSrcCode CppHdrCode) (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class InternalIOStmt r smt | r -> smt where Source #

Methods

printSt :: Bool -> Maybe (SValue r) -> SValue r -> SValue r -> MS (r smt) Source #

Instances

Instances details
InternalIOStmt CSharpCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalIOStmt CppHdrCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalIOStmt CppSrcCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalIOStmt JavaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalIOStmt PythonCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalIOStmt SwiftCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

InternalIOStmt JuliaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

InternalIOStmt MatlabCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

Pair p => InternalIOStmt (p CppSrcCode CppHdrCode) (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class InternalControlStmt r smt | r -> smt where Source #

Methods

multiReturn :: [SValue r] -> MS (r smt) Source #

Instances

Instances details
InternalControlStmt CSharpCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalControlStmt CppHdrCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalControlStmt CppSrcCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalControlStmt JavaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalControlStmt PythonCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalControlStmt SwiftCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

InternalControlStmt JuliaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

InternalControlStmt MatlabCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

Pair p => InternalControlStmt (p CppSrcCode CppHdrCode) (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderStatement r smt | r -> smt where Source #

Methods

stmt :: MS (r smt) -> MS (r smt) Source #

loopStmt :: MS (r smt) -> MS (r smt) Source #

stmtFromData :: Doc -> Terminator -> MS (r smt) Source #

Instances

Instances details
RenderStatement CSharpCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderStatement CppHdrCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderStatement CppSrcCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderStatement JavaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderStatement PythonCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderStatement SwiftCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderStatement JuliaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderStatement MatlabCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

Pair p => RenderStatement (p CppSrcCode CppHdrCode) (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class StatementElim r smt | r -> smt where Source #

Methods

statement :: r smt -> Doc Source #

statementTerm :: r smt -> Terminator Source #

Instances

Instances details
StatementElim CSharpCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

StatementElim CppHdrCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

StatementElim CppSrcCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

StatementElim JavaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

StatementElim PythonCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

StatementElim SwiftCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

StatementElim JuliaCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

StatementElim MatlabCode (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

Pair p => StatementElim (p CppSrcCode CppHdrCode) (Doc, Terminator) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderVisibility r vis | r -> vis where Source #

Instances

Instances details
RenderVisibility CSharpCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderVisibility JavaCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderVisibility PythonCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderVisibility SwiftCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderVisibility JuliaCode Doc Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderVisibility MatlabCode Doc Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

RenderVisibility CppHdrCode (Doc, VisibilityTag) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderVisibility CppSrcCode (Doc, VisibilityTag) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

Pair p => RenderVisibility (p CppSrcCode CppHdrCode) (Doc, VisibilityTag) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class VisibilityElim r vis | r -> vis where Source #

Methods

visibility :: r vis -> Doc Source #

Instances

Instances details
VisibilityElim CSharpCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

VisibilityElim JavaCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

VisibilityElim PythonCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

VisibilityElim SwiftCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

VisibilityElim JuliaCode Doc Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

VisibilityElim MatlabCode Doc Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

VisibilityElim CppHdrCode (Doc, VisibilityTag) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

VisibilityElim CppSrcCode (Doc, VisibilityTag) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

Pair p => VisibilityElim (p CppSrcCode CppHdrCode) (Doc, VisibilityTag) Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class TypeSym r => MethodTypeSym r where Source #

Methods

mType :: VS (r TypeData) -> MSMthdType r Source #

Instances

Instances details
MethodTypeSym CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

MethodTypeSym CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

MethodTypeSym CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

MethodTypeSym JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

MethodTypeSym PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

MethodTypeSym SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

MethodTypeSym JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

MethodTypeSym MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderParam r where Source #

Instances

Instances details
RenderParam CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderParam CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderParam CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderParam JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderParam PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderParam SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderParam JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderParam MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class ParamElim r where Source #

Instances

Instances details
ParamElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

ParamElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ParamElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ParamElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

ParamElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

ParamElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

ParamElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

ParamElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class (MethodTypeSym r, BlockCommentSym r) => RenderMethod r md | r -> md where Source #

Methods

commentedFunc :: MS (r Doc) -> MS (r md) -> MS (r md) Source #

Takes a BlockComment and a method and generates a function.

mthdFromData :: VisibilityTag -> Doc -> MS (r md) Source #

Instances

Instances details
RenderMethod CSharpCode MethodData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderMethod JavaCode MethodData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderMethod PythonCode MethodData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderMethod SwiftCode MethodData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

RenderMethod JuliaCode MethodData Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

RenderMethod MatlabCode MethodData Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

class BlockCommentSym r where Source #

Methods

blockComment :: [String] -> r Doc Source #

docComment :: State a [String] -> State a (r Doc) Source #

Converts a list of strings into a block comment

Instances

Instances details
BlockCommentSym CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

Methods

blockComment :: [String] -> CSharpCode Doc Source #

docComment :: State a [String] -> State a (CSharpCode Doc) Source #

BlockCommentSym CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

Methods

blockComment :: [String] -> CppHdrCode Doc Source #

docComment :: State a [String] -> State a (CppHdrCode Doc) Source #

BlockCommentSym CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

Methods

blockComment :: [String] -> CppSrcCode Doc Source #

docComment :: State a [String] -> State a (CppSrcCode Doc) Source #

BlockCommentSym JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

Methods

blockComment :: [String] -> JavaCode Doc Source #

docComment :: State a [String] -> State a (JavaCode Doc) Source #

BlockCommentSym PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

Methods

blockComment :: [String] -> PythonCode Doc Source #

docComment :: State a [String] -> State a (PythonCode Doc) Source #

BlockCommentSym SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

Methods

blockComment :: [String] -> SwiftCode Doc Source #

docComment :: State a [String] -> State a (SwiftCode Doc) Source #

BlockCommentSym JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

Methods

blockComment :: [String] -> JuliaCode Doc Source #

docComment :: State a [String] -> State a (JuliaCode Doc) Source #

BlockCommentSym MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

Methods

blockComment :: [String] -> MatlabCode Doc Source #

docComment :: State a [String] -> State a (MatlabCode Doc) Source #

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class BlockCommentElim r where Source #

Methods

blockComment' :: r Doc -> Doc Source #

Instances

Instances details
BlockCommentElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

BlockCommentElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

BlockCommentElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

BlockCommentElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

BlockCommentElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

BlockCommentElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

BlockCommentElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

BlockCommentElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class ScopeElim r where Source #

Instances

Instances details
ScopeElim CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

ScopeElim CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ScopeElim CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

ScopeElim JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

ScopeElim PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

ScopeElim SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

ScopeElim JuliaCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.JuliaRenderer

ScopeElim MatlabCode Source # 
Instance details

Defined in Drasil.GProc.LanguageRenderer.MatlabRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer