diff options
Diffstat (limited to 'core')
| -rw-r--r-- | core/base.moon | 1 | ||||
| -rw-r--r-- | core/value.moon | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/core/base.moon b/core/base.moon index 6af4913..cf3d146 100644 --- a/core/base.moon +++ b/core/base.moon @@ -44,6 +44,7 @@ class EventInput extends Input -- -- lifts streams of IO objects to events class IOInput extends Input + impure: true dirty: => @stream\unwrap!\dirty! class IO diff --git a/core/value.moon b/core/value.moon index 0e72486..d4a0de3 100644 --- a/core/value.moon +++ b/core/value.moon @@ -36,8 +36,8 @@ class Result if @op for input in @op\all_inputs! - continue if is_child[input.stream] - @side_inputs[input.stream] = true + if input.impure or not is_child[input.stream] + @side_inputs[input] = true is_const: => not next @side_inputs |
