Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data UnitInfo
- = UnitParamPosAbs (String, Int)
- | UnitParamPosUse (String, Int, Int)
- | UnitParamVarAbs (String, String)
- | UnitParamVarUse (String, String, Int)
- | UnitParamLitAbs Int
- | UnitParamLitUse (Int, Int)
- | UnitLiteral Int
- | UnitlessLit
- | UnitlessVar
- | UnitName String
- | UnitAlias String
- | UnitVar String
- | UnitMul UnitInfo UnitInfo
- | UnitPow UnitInfo Double
- data Constraint
- type Constraints = [Constraint]
- conParamEq :: Constraint -> Constraint -> Bool
- unitParamEq :: UnitInfo -> UnitInfo -> Bool
- data UnitAnnotation a = UnitAnnotation {
- prevAnnotation :: a
- unitSpec :: Maybe UnitStatement
- unitConstraint :: Maybe Constraint
- unitInfo :: Maybe UnitInfo
- unitBlock :: Maybe (Block (Analysis (UnitAnnotation a)))
- dbgUnitAnnotation :: UnitAnnotation t -> [Char]
- mkUnitAnnotation :: a -> UnitAnnotation a
- toUnitInfo :: UnitOfMeasure -> UnitInfo
Documentation
Description of the unit of an expression.
data Constraint Source #
A relation between UnitInfos
type Constraints = [Constraint] Source #
conParamEq :: Constraint -> Constraint -> Bool Source #
Constraint parametric
equality: treat all uses of a parametric
abstractions as equivalent to the abstraction.
unitParamEq :: UnitInfo -> UnitInfo -> Bool Source #
Unit parametric
equality: treat all uses of a parametric
abstractions as equivalent to the abstraction.
data UnitAnnotation a Source #
UnitAnnotation | |
|
Linkable UA Source # | |
ASTEmbeddable UA UnitStatement Source # | |
Data a => Data (UnitAnnotation a) Source # | |
Show a => Show (UnitAnnotation a) Source # | |
dbgUnitAnnotation :: UnitAnnotation t -> [Char] Source #
mkUnitAnnotation :: a -> UnitAnnotation a Source #
toUnitInfo :: UnitOfMeasure -> UnitInfo Source #
Convert parser units to UnitInfo