summaryrefslogtreecommitdiff
path: root/rules/CC/auto/EXPRESSIONS
blob: ac19f7a001e9952e25b8ab0da78de1714bb6aaa4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{ "last_list_entry":
  { "vars": ["list"]
  , "expression":
    { "type": "foldl"
    , "range": {"type": "var", "name": "list"}
    , "start": null
    , "body": {"type": "var", "name": "_"}
    }
  }
, "first_list_entry":
  { "vars": ["list"]
  , "imports": {"last": "last_list_entry"}
  , "expression":
    { "type": "let*"
    , "bindings":
      [ [ "list"
        , { "type": "foldl"
          , "range": {"type": "var", "name": "list", "default": []}
          , "start": null
          , "body":
            { "type": "if"
            , "cond": {"type": "var", "name": "$1"}
            , "then": {"type": "var", "name": "$1"}
            , "else": [{"type": "var", "name": "_"}]
            }
          }
        ]
      ]
    , "body": {"type": "CALL_EXPRESSION", "name": "last"}
    }
  }
}