def evaluate

bendvy-ecs-core@0.1.0.4 · machine.bend:191

import bendvy-ecs-core@0.1.0.4/machine.bend as Machine
import Base

191def evaluate(~S: Data,~M: Data,~V: Data,~same: V -> V -> Bool,condition: Condition<V>,+slot: Slot<S,M,V>) -> Bool:
192  match condition:
193    case InState{value}: current_matches(~S,~M,~V,~same,slot,value)
194    case StateChanged{}: changed(~S,~M,~V,slot)
195    case Not{inner}: Bool.not(evaluate(~S,~M,~V,~same,inner,slot))
196    case Constant{value}: value
197    case And{left,right}: Bool.and(evaluate(~S,~M,~V,~same,left,slot),evaluate(~S,~M,~V,~same,right,slot))
198    case Or{left,right}: Bool.or(evaluate(~S,~M,~V,~same,left,slot),evaluate(~S,~M,~V,~same,right,slot))

Uses (8)

Used by (0)

No other definition uses this definition.