mirror of
https://github.com/github/semantic.git
synced 2024-11-28 10:15:55 +03:00
Define a synonym for the value effects.
This commit is contained in:
parent
d74812dbd2
commit
263b068984
@ -3,6 +3,7 @@ module Data.Abstract.Evaluatable
|
|||||||
( module X
|
( module X
|
||||||
, Evaluatable(..)
|
, Evaluatable(..)
|
||||||
, ModuleEffects
|
, ModuleEffects
|
||||||
|
, ValueEffects
|
||||||
, evaluate
|
, evaluate
|
||||||
, traceResolve
|
, traceResolve
|
||||||
-- * Preludes
|
-- * Preludes
|
||||||
@ -85,6 +86,10 @@ type ModuleEffects address value rest
|
|||||||
': Reader ModuleInfo
|
': Reader ModuleInfo
|
||||||
': rest
|
': rest
|
||||||
|
|
||||||
|
type ValueEffects address value rest
|
||||||
|
= Function address value
|
||||||
|
': rest
|
||||||
|
|
||||||
evaluate :: ( AbstractValue address value valueEffects
|
evaluate :: ( AbstractValue address value valueEffects
|
||||||
, Declarations term
|
, Declarations term
|
||||||
, Effects effects
|
, Effects effects
|
||||||
@ -107,7 +112,7 @@ evaluate :: ( AbstractValue address value valueEffects
|
|||||||
, Ord address
|
, Ord address
|
||||||
, Recursive term
|
, Recursive term
|
||||||
, moduleEffects ~ ModuleEffects address value effects
|
, moduleEffects ~ ModuleEffects address value effects
|
||||||
, valueEffects ~ (Function address value ': moduleEffects)
|
, valueEffects ~ ValueEffects address value moduleEffects
|
||||||
)
|
)
|
||||||
=> proxy lang
|
=> proxy lang
|
||||||
-> (SubtermAlgebra Module term (TermEvaluator term address value moduleEffects address) -> SubtermAlgebra Module term (TermEvaluator term address value moduleEffects address))
|
-> (SubtermAlgebra Module term (TermEvaluator term address value moduleEffects address) -> SubtermAlgebra Module term (TermEvaluator term address value moduleEffects address))
|
||||||
|
Loading…
Reference in New Issue
Block a user