drasil-gool-0.1.1.0: A framework for code and document generation for scientific software - GOOL SubPackage
Safe HaskellNone
LanguageGHC2024

Drasil.GOOL.RendererClassesOO

Documentation

class (CommonRenderSym r mthd vis param bod block stmt var scope val binder typ, ParameterSym r param var, MethodSym r mthd vis param bod var typ, OOMethodSym r mthd attch vis param bod var val typ, VisibilitySym r vis, AttachmentSym r attch, StateVarSym r stvr attch vis var val, ClassSym r cls stvr mthd, ModuleSym r mod cls mthd, FileSym r file mod, ValueSym r val typ, InternalValueExp r var val typ, GetSet r var val, ObserverPattern r stmt typ, StrategyPattern r bod block var val, VariableSym r var typ, TypeSym r typ, OOTypeSym r typ, OOVariableSym r var val typ, SelfSym r var, OOValueExpression r var val typ, RenderClass r cls stvr mthd vis, ClassElim r cls, RenderFile r file mod, InternalGetSet r var val typ, MethodTypeSym r typ, OOMethodTypeSym r typ, RenderMethod r mthd, OORenderMethod r mthd attch vis param bod typ, RenderMod r mod, ModuleElim r mod, StateVarElim r stvr, PermElim r attch) => OORenderSym (r :: Type -> Type) file mod cls stvr mthd attch vis param bod block stmt var scope val binder typ Source #

class RenderFile (r :: Type -> Type) file mod | r -> file mod where Source #

Methods

top :: r mod -> r Block Source #

bottom :: r Block Source #

commentedMod :: FS (r file) -> FS (r Doc) -> FS (r file) Source #

fileFromData :: FilePath -> FS (r mod) -> FS (r file) Source #

Instances

Instances details
RenderFile CSharpCode FileData ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderFile CppHdrCode FileData ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderFile CppSrcCode FileData ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderFile JavaCode FileData ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderFile PythonCode FileData ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderFile SwiftCode FileData ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

Pair p => RenderFile (p CppSrcCode CppHdrCode) FileData ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class PermElim (r :: k -> Type) (attch :: k) where Source #

Methods

perm :: r attch -> Doc Source #

binding :: r attch -> AttachmentTag Source #

Instances

Instances details
PermElim CSharpCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

PermElim CppHdrCode AttachmentData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

PermElim CppSrcCode AttachmentData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

PermElim JavaCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

PermElim PythonCode AttachmentData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

PermElim SwiftCode Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

Pair p => PermElim (p CppSrcCode CppHdrCode :: Type -> Type) AttachmentData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class InternalGetSet (r :: Type -> Type) var val typ | r -> var val typ where Source #

Methods

getFunc :: VS (r var) -> VS (r FuncData) Source #

setFunc :: VS (r typ) -> VS (r var) -> VS (r val) -> VS (r FuncData) Source #

Instances

Instances details
InternalGetSet CSharpCode Variable Value TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalGetSet CppHdrCode Variable Value TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalGetSet CppSrcCode Variable Value TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalGetSet JavaCode Variable Value TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalGetSet PythonCode Variable Value TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalGetSet SwiftCode Variable Value TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

Pair p => InternalGetSet (p CppSrcCode CppHdrCode) Variable Value TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class RenderClass (r :: Type -> Type) cls stvr mthd vis | r -> cls stvr mthd vis where Source #

Methods

intClass :: Label -> r vis -> r ParentSpec -> [CSStateVar r stvr] -> [MS (r mthd)] -> [MS (r mthd)] -> CS (r cls) Source #

inherit :: Maybe Label -> r ParentSpec Source #

implements :: [Label] -> r ParentSpec Source #

commentedClass :: CS (r Doc) -> CS (r cls) -> CS (r cls) Source #

Instances

Instances details
RenderClass CSharpCode Class StateVar MethodData Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderClass JavaCode Class StateVar MethodData Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderClass PythonCode Class StateVar MethodData Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderClass SwiftCode Class StateVar MethodData Doc Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

class RenderMod (r :: k -> Type) (mod :: k) | r -> mod where Source #

Methods

modFromData :: String -> FS Doc -> FS (r mod) Source #

updateModuleDoc :: (Doc -> Doc) -> r mod -> r mod Source #

Instances

Instances details
RenderMod CSharpCode ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderMod CppHdrCode ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderMod CppSrcCode ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

RenderMod JavaCode ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderMod PythonCode ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderMod SwiftCode ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

Pair p => RenderMod (p CppSrcCode CppHdrCode :: Type -> Type) ModData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

class OORenderMethod (r :: k -> Type) (mthd :: k) (attch :: k) (vis :: k) (param :: k) (bod :: k) (typ :: k) | r -> mthd attch vis param bod typ where Source #

Methods

intMethod :: Bool -> Label -> r vis -> r attch -> MS (r typ) -> [MS (r param)] -> MS (r bod) -> MS (r mthd) Source #

Main method?, name, publicprivate, classLevelinstanceLevel, return type, parameters, body

intFunc :: Bool -> Label -> r vis -> r attch -> MS (r typ) -> [MS (r param)] -> MS (r bod) -> MS (r mthd) Source #

True for main function, name, publicprivate, classLevelinstanceLevel, return type, parameters, body

destructor :: forall (stvr :: k). [CSStateVar r stvr] -> MS (r mthd) Source #

Instances

Instances details
OORenderMethod CSharpCode MethodData Doc Doc ParamData Body TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

OORenderMethod JavaCode MethodData Doc Doc ParamData Body TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

OORenderMethod PythonCode MethodData AttachmentData Doc ParamData Body TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

OORenderMethod SwiftCode MethodData Doc Doc ParamData Body TypeData Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer