| summaryrefslogtreecommitdiff | 
diff options
Diffstat (limited to 'src/ataxic_sugar.erl')
| -rw-r--r-- | src/ataxic_sugar.erl | 32 | 
1 files changed, 19 insertions, 13 deletions
| diff --git a/src/ataxic_sugar.erl b/src/ataxic_sugar.erl index 3098196..7f6e441 100644 --- a/src/ataxic_sugar.erl +++ b/src/ataxic_sugar.erl @@ -64,20 +64,26 @@ update_orddict_element (IX, OP) ->        store,        [           ataxic:constant(IX), -         ataxic:sequence           ( -            [ -               ataxic:apply_function -               ( -                  orddict, -                  fetch, -                  [ -                     ataxic:constant(IX), -                     ataxic:current_value() -                  ] -               ), -               OP -            ] +            case ataxic:is_constant(OP) of +               true -> OP; +               false -> +                  ataxic:sequence +                  ( +                     [ +                        ataxic:apply_function +                        ( +                           orddict, +                           fetch, +                           [ +                              ataxic:constant(IX), +                              ataxic:current_value() +                           ] +                        ), +                        OP +                     ] +                  ) +            end           ),           ataxic:current_value()        ] | 


