drasil-theory-0.1.0.0: A framework for code and document generation for scientific software - Theory SubPackage
Safe HaskellSafe-Inferred
LanguageHaskell2010

Theory.Drasil.InstanceModel

Description

Defines types and functions for Instance Models.

Synopsis

Type

data InstanceModel Source #

An instance model is a ModelKind that may have specific inputs, outputs, and output constraints. It also has attributes like references, derivation, labels (ShortName), reference address, and notes.

Instances

Instances details
Idea InstanceModel Source #

Finds the idea contained in the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

NamedIdea InstanceModel Source #

Finds the term (NP) of the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

Methods

term :: Lens' InstanceModel NP #

DefinesQuantity InstanceModel Source #

Finds the Quantity of an InstanceModel

Instance details

Defined in Theory.Drasil.InstanceModel

CommonIdea InstanceModel Source #

Finds the idea of an InstanceModel (abbreviation).

Instance details

Defined in Theory.Drasil.InstanceModel

Methods

abrv :: InstanceModel -> String #

ConceptDomain InstanceModel Source #

Finds the domain of the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

Methods

cdom :: InstanceModel -> [UID] #

Definition InstanceModel Source #

Finds the definition of the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

Methods

defn :: Lens' InstanceModel Sentence #

HasAdditionalNotes InstanceModel Source #

Finds any additional notes for the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

Methods

getNotes :: Lens' InstanceModel [Sentence] #

HasDecRef InstanceModel Source #

Finds DecRefs contained in the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

Methods

getDecRefs :: Lens' InstanceModel [DecRef] #

MayHaveDerivation InstanceModel Source #

Finds the derivation of the InstanceModel. May contain Nothing.

Instance details

Defined in Theory.Drasil.InstanceModel

Express InstanceModel Source #

Converts the InstanceModels related expression into the display language.

Instance details

Defined in Theory.Drasil.InstanceModel

HasRefAddress InstanceModel Source #

Finds the reference address of the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

Referable InstanceModel Source #

Finds the reference address of an InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

HasShortName InstanceModel Source #

Finds the ShortName of the InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

HasUID InstanceModel Source #

Finds the UID of an InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

Methods

uid :: Lens' InstanceModel UID #

HasInputs InstanceModel Source #

Finds the inputs of an InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

HasOutput InstanceModel Source #

Finds the outputs and output constraints of an InstanceModel.

Instance details

Defined in Theory.Drasil.InstanceModel

RequiresChecking InstanceModel Expr Space Source #

Expose all expressions that need to be type-checked.

Instance details

Defined in Theory.Drasil.InstanceModel

Constructors

im :: ModelKind Expr -> Inputs -> Output -> OutputConstraints -> [DecRef] -> Maybe Derivation -> String -> [Sentence] -> InstanceModel Source #

Smart constructor for instance models with everything defined.

imNoDeriv :: ModelKind Expr -> Inputs -> Output -> OutputConstraints -> [DecRef] -> String -> [Sentence] -> InstanceModel Source #

Smart constructor for instance models with a custom term, and no derivation.

imNoRefs :: ModelKind Expr -> Inputs -> Output -> OutputConstraints -> Maybe Derivation -> String -> [Sentence] -> InstanceModel Source #

Smart constructor for instance models with a custom term, and no references.

imNoDerivNoRefs :: ModelKind Expr -> Inputs -> Output -> OutputConstraints -> String -> [Sentence] -> InstanceModel Source #

Smart constructor for instance models with a custom term, and no derivations or references.

Functions

getEqModQdsFromIm :: [InstanceModel] -> [SimpleQDef] Source #

Grab all related QDefinitions from a list of instance models.

qwUC :: (Quantity q, MayHaveUnit q) => q -> Input Source #

For building a quantity with no constraint.

qwC :: (Quantity q, MayHaveUnit q) => q -> RealInterval Expr Expr -> Input Source #

For building a quantity with a constraint.