Safe Haskell | None |
---|---|
Language | Haskell2010 |
SysInfo.Drasil.SystemInformation
Description
Define types and functions related to creating a system information database.
Synopsis
- data SystemInformation where
- SI :: (CommonIdea a, Idea a, Idea b, HasName c, Quantity e, Eq e, MayHaveUnit e, Quantity f, MayHaveUnit f, Concept f, Eq f, Quantity h, MayHaveUnit h, Quantity i, MayHaveUnit i, HasUID j, Constrained j) => {..} -> SystemInformation
- data Block a
- instModels :: Lens' SystemInformation [InstanceModel]
- datadefs :: Lens' SystemInformation [DataDefinition]
- configFiles :: Lens' SystemInformation [String]
- inputs :: HasInputs c => Lens' c [(QuantityDict, Maybe (RealInterval Expr Expr))]
- defSequence :: Lens' SystemInformation [Block SimpleQDef]
- constraints :: Constrained c => Lens' c [ConstraintE]
- constants :: Lens' SystemInformation [ConstQDef]
- sysinfodb :: Lens' SystemInformation ChunkDB
- usedinfodb :: Lens' SystemInformation ChunkDB
- citeDB :: SystemInformation -> BibRef
- citationsFromBibMap :: BibMap -> [Citation]
- data ReferenceDB
- type RefMap a = Map UID (a, Int)
- rdb :: BibRef -> [ConceptInstance] -> ReferenceDB
- simpleMap :: HasUID a => [a] -> RefMap a
- citationDB :: Lens' ReferenceDB BibMap
- conceptDB :: Lens' ReferenceDB ConceptMap
System Information
Types
data SystemInformation where Source #
Data structure for holding all of the requisite information about a system to be used in artifact generation.
Constructors
SI | |
Fields
|
for listing QDefinition
s in SystemInformation
.
Lenses
instModels :: Lens' SystemInformation [InstanceModel] Source #
datadefs :: Lens' SystemInformation [DataDefinition] Source #
configFiles :: Lens' SystemInformation [String] Source #
inputs :: HasInputs c => Lens' c [(QuantityDict, Maybe (RealInterval Expr Expr))] #
Provides a Lens
that holds a QuantityDict
and maybe constraints.
defSequence :: Lens' SystemInformation [Block SimpleQDef] Source #
constraints :: Constrained c => Lens' c [ConstraintE] #
Provides a Lens
to the Constraint
s.
constants :: Lens' SystemInformation [ConstQDef] Source #
sysinfodb :: Lens' SystemInformation ChunkDB Source #
usedinfodb :: Lens' SystemInformation ChunkDB Source #
Lookup Functions
citeDB :: SystemInformation -> BibRef Source #
Helper for extracting a bibliography from the system information.
citationsFromBibMap :: BibMap -> [Citation] Source #
Create sorted citations from a bibliography.
Reference Database
Types
data ReferenceDB Source #
Database for internal references. Contains citations and referrable concepts.
type RefMap a = Map UID (a, Int) Source #
Database for maintaining references. The Int is that reference's number. Maintains access to both num and chunk for easy reference swapping between number and shortname/refname when necessary (or use of number if no shortname exists).
Constructors
rdb :: BibRef -> [ConceptInstance] -> ReferenceDB Source #
Smart constructor for creating a reference database from a bibliography and concept instances.
Lenses
citationDB :: Lens' ReferenceDB BibMap Source #
conceptDB :: Lens' ReferenceDB ConceptMap Source #