rascal 0.2.1

A parser and compiler for Flash ActionScript 2 files into SWFs
Documentation
---
source: crates/rascal/src/program.rs
expression: parsed
input_file: samples/as2/legacy_get_set.as
---
Ok:
  initial_script:
    - Declare:
        - name:
            span:
              start: 4
              end: 5
            value: y
          value:
            span:
              start: 8
              end: 9
            value:
              Constant:
                Integer: 5
          type_name: ~
    - Declare:
        - name:
            span:
              start: 15
              end: 16
            value: x
          value:
            span:
              start: 19
              end: 22
            value:
              Constant:
                String: y
          type_name: ~
    - Expr:
        span:
          start: 24
          end: 56
        value:
          Trace:
            span:
              start: 30
              end: 55
            value:
              BinaryOperator:
                - Add
                - span:
                    start: 30
                    end: 44
                  value:
                    Constant:
                      String: "get(\"x\"): "
                - span:
                    start: 47
                    end: 55
                  value:
                    GetVariable:
                      span:
                        start: 51
                        end: 54
                      value:
                        Constant:
                          String: x
    - Expr:
        span:
          start: 58
          end: 84
        value:
          Trace:
            span:
              start: 64
              end: 83
            value:
              BinaryOperator:
                - Add
                - span:
                    start: 64
                    end: 74
                  value:
                    Constant:
                      String: "get(x): "
                - span:
                    start: 77
                    end: 83
                  value:
                    GetVariable:
                      span:
                        start: 81
                        end: 82
                      value:
                        Constant:
                          Identifier: x
    - Expr:
        span:
          start: 86
          end: 106
        value:
          Trace:
            span:
              start: 92
              end: 105
            value:
              Constant:
                String: "set(x, 15);"
    - Expr:
        span:
          start: 108
          end: 118
        value:
          SetVariable:
            - span:
                start: 112
                end: 113
              value:
                Constant:
                  Identifier: x
            - span:
                start: 115
                end: 117
              value:
                Constant:
                  Integer: 15
    - Expr:
        span:
          start: 120
          end: 137
        value:
          Trace:
            span:
              start: 126
              end: 136
            value:
              BinaryOperator:
                - Add
                - span:
                    start: 126
                    end: 132
                  value:
                    Constant:
                      String: "x = "
                - span:
                    start: 135
                    end: 136
                  value:
                    Constant:
                      Identifier: x
    - Expr:
        span:
          start: 139
          end: 156
        value:
          Trace:
            span:
              start: 145
              end: 155
            value:
              BinaryOperator:
                - Add
                - span:
                    start: 145
                    end: 151
                  value:
                    Constant:
                      String: "y = "
                - span:
                    start: 154
                    end: 155
                  value:
                    Constant:
                      Identifier: y
  interfaces: []
  classes: []