hets -- a heterogenous Specification (CASL) tool set
Contents
Index
HasCASL.MixAna
Portability
portable
Stability
experimental
Maintainer
hets@tzi.de
Contents
equation stuff
pattern stuff
Description
Mixfix analysis of terms and patterns, types annotations are also analysed
Synopsis
assert
::
Bool
-> a -> a
type
Rule
= (
Id
,
Int
, [
Token
])
trueId
::
Id
falseId
::
Id
ifThenElse
::
Id
whenElse
::
Id
mkInfix
::
String
->
Id
infixIf
::
Id
exEq
::
Id
eqId
::
Id
andId
::
Id
orId
::
Id
implId
::
Id
eqvId
::
Id
defId
::
Id
notId
::
Id
builtinRelIds
::
Set
Id
builtinLogIds
::
Set
Id
addBuiltins
::
GlobalAnnos
->
GlobalAnnos
opKindFilter
::
Int
->
Int
->
Int
->
Maybe
Bool
mkPrecIntMap
::
Rel
Id
->
PrecMap
getIdPrec
::
PrecMap
->
Set
Id
->
Id
->
Int
initTermRules
:: (
PrecMap
,
Set
Id
) ->
Set
Id
-> [
Rule
]
addType
::
Term
->
Term
->
Term
toMixTerm
::
Id
->
Int
-> [
Term
] -> [
Pos
] ->
Term
type
TermChart
=
Chart
Term
Int
findOpId
::
Assumps
->
TypeMap
->
Int
->
UninstOpId
->
Type
->
Maybe
OpInfo
iterateCharts
::
GlobalAnnos
-> [
Term
] ->
TermChart
->
State
Env
TermChart
resolve
::
GlobalAnnos
->
Term
->
State
Env
(
Maybe
Term
)
resolveCaseEq
::
GlobalAnnos
->
ProgEq
->
State
Env
(
Maybe
ProgEq
)
resolveCaseEqs
::
GlobalAnnos
-> [
ProgEq
] ->
State
Env
[
ProgEq
]
resolveLetEqs
::
GlobalAnnos
-> [
ProgEq
] ->
State
Env
[
ProgEq
]
extractBindings
::
Pattern
->
State
Env
(
Pattern
, [
VarDecl
])
resolveConstrPattern
::
GlobalAnnos
->
Pattern
->
State
Env
(
Maybe
Pattern
)
initPatternRules
:: (
PrecMap
,
Set
Id
) -> [
Id
] -> [
Rule
]
addPatternType
::
Pattern
->
Pattern
->
Pattern
mkPatAppl
::
Pattern
->
Pattern
-> [
Pos
] ->
Pattern
toPat
::
Id
->
Int
-> [
Pattern
] -> [
Pos
] ->
Pattern
type
PatChart
=
Chart
Pattern
Int
iterPatCharts
::
GlobalAnnos
-> [
Pattern
] ->
PatChart
->
State
Env
PatChart
getKnowns
::
Id
->
Knowns
resolvePattern
::
GlobalAnnos
->
Pattern
->
State
Env
(
Maybe
Pattern
)
Documentation
assert
::
Bool
-> a -> a
type
Rule
= (
Id
,
Int
, [
Token
])
trueId
::
Id
falseId
::
Id
ifThenElse
::
Id
whenElse
::
Id
mkInfix
::
String
->
Id
infixIf
::
Id
exEq
::
Id
eqId
::
Id
andId
::
Id
orId
::
Id
implId
::
Id
eqvId
::
Id
defId
::
Id
notId
::
Id
builtinRelIds
::
Set
Id
builtinLogIds
::
Set
Id
addBuiltins
::
GlobalAnnos
->
GlobalAnnos
opKindFilter
::
Int
->
Int
->
Int
->
Maybe
Bool
mkPrecIntMap
::
Rel
Id
->
PrecMap
getIdPrec
::
PrecMap
->
Set
Id
->
Id
->
Int
initTermRules
:: (
PrecMap
,
Set
Id
) ->
Set
Id
-> [
Rule
]
addType
::
Term
->
Term
->
Term
toMixTerm
::
Id
->
Int
-> [
Term
] -> [
Pos
] ->
Term
type
TermChart
=
Chart
Term
Int
findOpId
::
Assumps
->
TypeMap
->
Int
->
UninstOpId
->
Type
->
Maybe
OpInfo
find information for qualified operation
iterateCharts
::
GlobalAnnos
-> [
Term
] ->
TermChart
->
State
Env
TermChart
resolve
::
GlobalAnnos
->
Term
->
State
Env
(
Maybe
Term
)
equation stuff
resolveCaseEq
::
GlobalAnnos
->
ProgEq
->
State
Env
(
Maybe
ProgEq
)
resolveCaseEqs
::
GlobalAnnos
-> [
ProgEq
] ->
State
Env
[
ProgEq
]
resolveLetEqs
::
GlobalAnnos
-> [
ProgEq
] ->
State
Env
[
ProgEq
]
pattern stuff
extractBindings
::
Pattern
->
State
Env
(
Pattern
, [
VarDecl
])
extract bindings from a pattern
resolveConstrPattern
::
GlobalAnnos
->
Pattern
->
State
Env
(
Maybe
Pattern
)
initPatternRules
:: (
PrecMap
,
Set
Id
) -> [
Id
] -> [
Rule
]
addPatternType
::
Pattern
->
Pattern
->
Pattern
mkPatAppl
::
Pattern
->
Pattern
-> [
Pos
] ->
Pattern
toPat
::
Id
->
Int
-> [
Pattern
] -> [
Pos
] ->
Pattern
type
PatChart
=
Chart
Pattern
Int
iterPatCharts
::
GlobalAnnos
-> [
Pattern
] ->
PatChart
->
State
Env
PatChart
getKnowns
::
Id
->
Knowns
resolvePattern
::
GlobalAnnos
->
Pattern
->
State
Env
(
Maybe
Pattern
)
Produced by
Haddock
version 0.6