---
source: tests/spec/complex_op_resolution.rs
expression: test_ctx.prog_ctx.scope_registry
---
scopes:
  0:
    parent: ~
    name_to_id: {}
    variables: []
    defined_names: []
    range:
      start: 0
      end: 0
  1:
    parent: ~
    name_to_id:
      test_expr: 13
    variables:
      - 13
    defined_names:
      - test_expr
    range:
      start: 0
      end: 0
  2:
    parent: 1
    name_to_id:
      lhs: 0
      rhs: 1
    variables:
      - 0
      - 1
    defined_names: []
    range:
      start: 66
      end: 146
  3:
    parent: 1
    name_to_id:
      lhs: 2
      rhs: 3
    variables:
      - 2
      - 3
    defined_names: []
    range:
      start: 214
      end: 295
  4:
    parent: 1
    name_to_id:
      lhs: 4
      rhs: 5
    variables:
      - 4
      - 5
    defined_names: []
    range:
      start: 363
      end: 441
  5:
    parent: 1
    name_to_id:
      lhs: 6
      rhs: 7
    variables:
      - 6
      - 7
    defined_names: []
    range:
      start: 508
      end: 585
  6:
    parent: 1
    name_to_id:
      lhs: 8
      rhs: 9
    variables:
      - 8
      - 9
    defined_names: []
    range:
      start: 652
      end: 729
  7:
    parent: 1
    name_to_id:
      lhs: 10
      rhs: 11
    variables:
      - 10
      - 11
    defined_names: []
    range:
      start: 796
      end: 873
  8:
    parent: 1
    name_to_id:
      operand: 12
    variables:
      - 12
    defined_names: []
    range:
      start: 916
      end: 989
variables:
  0:
    name: lhs
    value_type:
      Primitive: Bool
    def_val: ~
    range:
      start: 80
      end: 89
    var_kind: FuncParam
  1:
    name: rhs
    value_type:
      Primitive: Bool
    def_val: ~
    range:
      start: 91
      end: 100
    var_kind: FuncParam
  2:
    name: lhs
    value_type:
      Primitive: Bool
    def_val: ~
    range:
      start: 228
      end: 237
    var_kind: FuncParam
  3:
    name: rhs
    value_type:
      Primitive: Bool
    def_val: ~
    range:
      start: 239
      end: 248
    var_kind: FuncParam
  4:
    name: lhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 377
      end: 385
    var_kind: FuncParam
  5:
    name: rhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 387
      end: 395
    var_kind: FuncParam
  6:
    name: lhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 521
      end: 529
    var_kind: FuncParam
  7:
    name: rhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 531
      end: 539
    var_kind: FuncParam
  8:
    name: lhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 665
      end: 673
    var_kind: FuncParam
  9:
    name: rhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 675
      end: 683
    var_kind: FuncParam
  10:
    name: lhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 809
      end: 817
    var_kind: FuncParam
  11:
    name: rhs
    value_type:
      Primitive: Int
    def_val: ~
    range:
      start: 819
      end: 827
    var_kind: FuncParam
  12:
    name: operand
    value_type:
      Primitive: Bool
    def_val: ~
    range:
      start: 930
      end: 943
    var_kind: FuncParam
  13:
    name: test_expr
    value_type:
      Primitive: Bool
    def_val:
      kind:
        InfixOp:
          operator: 0
          lhs:
            var_id: 0
            value:
              kind:
                InfixOp:
                  operator: 1
                  lhs:
                    var_id: 2
                    value:
                      kind:
                        InfixOp:
                          operator: 2
                          lhs:
                            var_id: 4
                            value:
                              kind:
                                InfixOp:
                                  operator: 4
                                  lhs:
                                    var_id: 8
                                    value:
                                      kind:
                                        IntLiteral: 1
                                      value_type:
                                        Primitive: Int
                                      range:
                                        start: 1007
                                        end: 1008
                                    range:
                                      start: 1007
                                      end: 1008
                                  rhs:
                                    var_id: 9
                                    value:
                                      kind:
                                        InfixOp:
                                          operator: 5
                                          lhs:
                                            var_id: 10
                                            value:
                                              kind:
                                                IntLiteral: 2
                                              value_type:
                                                Primitive: Int
                                              range:
                                                start: 1011
                                                end: 1012
                                            range:
                                              start: 1011
                                              end: 1012
                                          rhs:
                                            var_id: 11
                                            value:
                                              kind:
                                                IntLiteral: 3
                                              value_type:
                                                Primitive: Int
                                              range:
                                                start: 1015
                                                end: 1016
                                            range:
                                              start: 1015
                                              end: 1016
                                      value_type:
                                        Primitive: Int
                                      range:
                                        start: 1013
                                        end: 1014
                                    range:
                                      start: 1013
                                      end: 1014
                              value_type:
                                Primitive: Int
                              range:
                                start: 1009
                                end: 1010
                            range:
                              start: 1009
                              end: 1010
                          rhs:
                            var_id: 5
                            value:
                              kind:
                                IntLiteral: 7
                              value_type:
                                Primitive: Int
                              range:
                                start: 1020
                                end: 1021
                            range:
                              start: 1020
                              end: 1021
                      value_type:
                        Primitive: Bool
                      range:
                        start: 1017
                        end: 1019
                    range:
                      start: 1017
                      end: 1019
                  rhs:
                    var_id: 3
                    value:
                      kind:
                        PrefixOp:
                          operator: 6
                          operand:
                            var_id: 12
                            value:
                              kind:
                                BoolLiteral: true
                              value_type:
                                Primitive: Bool
                              range:
                                start: 1026
                                end: 1030
                            range:
                              start: 1026
                              end: 1030
                      value_type:
                        Primitive: Bool
                      range:
                        start: 1025
                        end: 1026
                    range:
                      start: 1025
                      end: 1026
              value_type:
                Primitive: Bool
              range:
                start: 1022
                end: 1024
            range:
              start: 1022
              end: 1024
          rhs:
            var_id: 1
            value:
              kind:
                InfixOp:
                  operator: 3
                  lhs:
                    var_id: 6
                    value:
                      kind:
                        IntLiteral: 5
                      value_type:
                        Primitive: Int
                      range:
                        start: 1034
                        end: 1035
                    range:
                      start: 1034
                      end: 1035
                  rhs:
                    var_id: 7
                    value:
                      kind:
                        IntLiteral: 2
                      value_type:
                        Primitive: Int
                      range:
                        start: 1038
                        end: 1039
                    range:
                      start: 1038
                      end: 1039
              value_type:
                Primitive: Bool
              range:
                start: 1036
                end: 1037
            range:
              start: 1036
              end: 1037
      value_type:
        Primitive: Bool
      range:
        start: 1031
        end: 1033
    range:
      start: 991
      end: 1039
    var_kind: GlobalConst
global_scope_ids:
  0: 1
next_scope_id: 9
next_variable_id: 14
