| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | Haskell2010 | 
Language.Drasil.Code.Imperative.DrasilState
Synopsis
- type GenState = State DrasilState
 - data DrasilState = DrasilState {
- codeSpec :: CodeSpec
 - modular :: Modularity
 - implType :: ImplementationType
 - inStruct :: Structure
 - conStruct :: ConstantStructure
 - conRepr :: ConstantRepr
 - concMatches :: MatchedConceptMap
 - spaceMatches :: MatchedSpaces
 - onSfwrC :: ConstraintBehaviour
 - onPhysC :: ConstraintBehaviour
 - commented :: [Comments]
 - doxOutput :: Verbosity
 - date :: String
 - logName :: String
 - logKind :: [Logging]
 - auxiliaries :: [AuxFile]
 - sampleData :: [Expr]
 - dsICNames :: InternalConcept -> Name
 - modules :: [Mod]
 - extLibNames :: [(Name, Version)]
 - extLibMap :: ExtLibMap
 - libPaths :: [FilePath]
 - eMap :: ModExportMap
 - libEMap :: ModExportMap
 - clsMap :: ClassDefinitionMap
 - defSet :: Set Name
 - getVal :: Int
 - currentModule :: String
 - currentClass :: String
 - _designLog :: Doc
 - _loggedSpaces :: [(Space, CodeType)]
 - currentScope :: ScopeType
 
 - designLog :: Lens' DrasilState Doc
 - type MatchedSpaces = Space -> GenState CodeType
 - type ModExportMap = Map String String
 - type ClassDefinitionMap = Map String String
 - data ScopeType
 - modExportMap :: OldCodeSpec -> Choices -> [Mod] -> ModExportMap
 - clsDefMap :: OldCodeSpec -> Choices -> [Mod] -> ClassDefinitionMap
 - addToDesignLog :: Space -> CodeType -> Doc -> DrasilState -> DrasilState
 - addLoggedSpace :: Space -> CodeType -> DrasilState -> DrasilState
 - genICName :: InternalConcept -> GenState Name
 
Documentation
type GenState = State DrasilState Source #
Abbreviation used throughout generator.
data DrasilState Source #
Private State, used to push these options around the generator.
Constructors
| DrasilState | |
Fields 
  | |
designLog :: Lens' DrasilState Doc Source #
modExportMap :: OldCodeSpec -> Choices -> [Mod] -> ModExportMap Source #
Builds the module export map, mapping each function and state variable name in the generated code to the name of the generated module that exports it.
clsDefMap :: OldCodeSpec -> Choices -> [Mod] -> ClassDefinitionMap Source #
Builds the class definition map, mapping each generated method and state variable name to the name of the generated class where it is defined.
addToDesignLog :: Space -> CodeType -> Doc -> DrasilState -> DrasilState Source #
addLoggedSpace :: Space -> CodeType -> DrasilState -> DrasilState Source #
Adds a Space-CodeType pair to the loggedSpaces list in DrasilState to prevent a duplicate
 log from being generated for that Space-CodeType pair.