---
source: full-moon/tests/fail_cases.rs
assertion_line: 23
expression: result.ast
input_file: full-moon/tests/roblox_cases/fail/parser/string-interpolation-double-brace-recovery
---
nodes:
  stmts:
    - - LocalAssignment:
          local_token:
            leading_trivia: []
            token:
              start_position:
                bytes: 0
                line: 1
                character: 1
              end_position:
                bytes: 5
                line: 1
                character: 6
              token_type:
                type: Symbol
                symbol: local
            trailing_trivia:
              - start_position:
                  bytes: 5
                  line: 1
                  character: 6
                end_position:
                  bytes: 6
                  line: 1
                  character: 7
                token_type:
                  type: Whitespace
                  characters: " "
          name_list:
            pairs:
              - End:
                  leading_trivia: []
                  token:
                    start_position:
                      bytes: 6
                      line: 1
                      character: 7
                    end_position:
                      bytes: 7
                      line: 1
                      character: 8
                    token_type:
                      type: Identifier
                      identifier: _
                  trailing_trivia:
                    - start_position:
                        bytes: 7
                        line: 1
                        character: 8
                      end_position:
                        bytes: 8
                        line: 1
                        character: 9
                      token_type:
                        type: Whitespace
                        characters: " "
          equal_token:
            leading_trivia: []
            token:
              start_position:
                bytes: 8
                line: 1
                character: 9
              end_position:
                bytes: 9
                line: 1
                character: 10
              token_type:
                type: Symbol
                symbol: "="
            trailing_trivia:
              - start_position:
                  bytes: 9
                  line: 1
                  character: 10
                end_position:
                  bytes: 10
                  line: 1
                  character: 11
                token_type:
                  type: Whitespace
                  characters: " "
          expr_list:
            pairs:
              - End:
                  InterpolatedString:
                    segments:
                      - literal:
                          leading_trivia: []
                          token:
                            start_position:
                              bytes: 10
                              line: 1
                              character: 11
                            end_position:
                              bytes: 20
                              line: 1
                              character: 21
                            token_type:
                              type: InterpolatedString
                              literal: "2 + 2 = "
                              kind: Begin
                          trailing_trivia: []
                        expression:
                          BinaryOperator:
                            lhs:
                              Number:
                                leading_trivia: []
                                token:
                                  start_position:
                                    bytes: 21
                                    line: 1
                                    character: 22
                                  end_position:
                                    bytes: 22
                                    line: 1
                                    character: 23
                                  token_type:
                                    type: Number
                                    text: "2"
                                trailing_trivia:
                                  - start_position:
                                      bytes: 22
                                      line: 1
                                      character: 23
                                    end_position:
                                      bytes: 23
                                      line: 1
                                      character: 24
                                    token_type:
                                      type: Whitespace
                                      characters: " "
                            binop:
                              Plus:
                                leading_trivia: []
                                token:
                                  start_position:
                                    bytes: 23
                                    line: 1
                                    character: 24
                                  end_position:
                                    bytes: 24
                                    line: 1
                                    character: 25
                                  token_type:
                                    type: Symbol
                                    symbol: +
                                trailing_trivia:
                                  - start_position:
                                      bytes: 24
                                      line: 1
                                      character: 25
                                    end_position:
                                      bytes: 25
                                      line: 1
                                      character: 26
                                    token_type:
                                      type: Whitespace
                                      characters: " "
                            rhs:
                              Number:
                                leading_trivia: []
                                token:
                                  start_position:
                                    bytes: 25
                                    line: 1
                                    character: 26
                                  end_position:
                                    bytes: 26
                                    line: 1
                                    character: 27
                                  token_type:
                                    type: Number
                                    text: "2"
                                trailing_trivia: []
                    last_string:
                      leading_trivia: []
                      token:
                        start_position:
                          bytes: 27
                          line: 1
                          character: 28
                        end_position:
                          bytes: 29
                          line: 1
                          character: 30
                        token_type:
                          type: InterpolatedString
                          literal: ""
                          kind: End
                      trailing_trivia:
                        - start_position:
                            bytes: 29
                            line: 1
                            character: 30
                          end_position:
                            bytes: 30
                            line: 1
                            character: 30
                          token_type:
                            type: Whitespace
                            characters: "\n"
      - ~
eof:
  leading_trivia: []
  token:
    start_position:
      bytes: 30
      line: 2
      character: 1
    end_position:
      bytes: 30
      line: 2
      character: 1
    token_type:
      type: Eof
  trailing_trivia: []

