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 BlockCommentSym r => 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) where Source #

Methods

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

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

Instances

Instances details
InternalGetSet CSharpCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

InternalGetSet CppHdrCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalGetSet CppSrcCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

InternalGetSet JavaCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

InternalGetSet PythonCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

InternalGetSet SwiftCode Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer

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

Defined in Drasil.GOOL.LanguageRenderer.CppRenderer

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

Methods

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

inherit :: Maybe Label -> r ParentSpec Source #

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

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

Instances

Instances details
RenderClass CSharpCode Doc MethodData StateVar Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

RenderClass JavaCode Doc MethodData StateVar Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

RenderClass PythonCode Doc MethodData StateVar Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

RenderClass SwiftCode Doc MethodData StateVar 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 (RenderMethod r mthd, OOMethodTypeSym r) => OORenderMethod (r :: Type -> Type) vis mthd attch bod | r -> vis attch bod where Source #

Methods

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

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

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

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

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

Instances

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

Defined in Drasil.GOOL.LanguageRenderer.CSharpRenderer

OORenderMethod JavaCode Doc MethodData Doc Body Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.JavaRenderer

OORenderMethod PythonCode Doc MethodData AttachmentData Body Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.PythonRenderer

OORenderMethod SwiftCode Doc MethodData Doc Body Source # 
Instance details

Defined in Drasil.GOOL.LanguageRenderer.SwiftRenderer