@ ProgramNode (location: (1,0)-(3,0)) ├── locals: [:x] └── statements: @ StatementsNode (location: (1,0)-(3,0)) └── body: (length: 1) └── @ LocalVariableWriteNode (location: (1,0)-(3,0)) ├── name: :x ├── depth: 0 ├── name_loc: (1,0)-(1,1) = "x" ├── value: │ @ StringNode (location: (1,4)-(3,0)) │ ├── flags: ∅ │ ├── opening_loc: (1,4)-(2,0) = "%\n" │ ├── content_loc: (2,0)-(2,0) = "" │ ├── closing_loc: (2,0)-(3,0) = "\n" │ └── unescaped: "" └── operator_loc: (1,2)-(1,3) = "="