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

Drasil.GOOL.LanguageRenderer.Macros

Description

Language-polymorphic functions that are defined by GOOL code

Synopsis

Documentation

runStrategy :: (CommonRenderSym r, Monad r) => Label -> [(Label, MSBody r)] -> Maybe (SValue r) -> Maybe (SVariable r) -> MS (r Doc) Source #

makeSetterVal :: CommonRenderSym r => Label -> SValue r -> Maybe Integer -> Maybe (SValue r) -> SValue r -> SValue r -> r (Scope r) -> (MSStatement r, SValue r) Source #

Gets the expression and code for setting bounds in a list slice Input: - String: Variable name for bound (to be created if necessary), - SValue: step value - Maybe Integer: literal value of step, if exists - Maybe SValue: given value of bound - SValue: value of bound if bound not given and step is positive - SValue: value of bound if bound not given and step is negative Output: (MSStatement, SValue): (setter, value) of bound