', [ new TagNode('-', 0, 'foo'), ]], ['', [ new TagNode('-', 0, 'foo'), ]], //0123456789012345678901 ['bar', [ new TagNode('-', 0, 'foo', [], [ new TextNode('-', 9, 'bar'), ]), ]], //0 1 2 3 4 5 6 7 8 9 0 //012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234 ['abc$xx', [ new TagNode('-', 0, 'foo', [ 'a' => [ new VariableNode('-', 12, 'b', [ [new TextNode('-', 15, '0')], [new VariableNode('-', 18, 'x', [])], ]), ], 'c' => [ new TextNode('-', 26, '"'), ], 'd' => [ new VariableNode('-', 33, 'e', []), new TextNode('-', 37, 'f'), ] ], [ new TagNode('-', 40, 'foo', [], [ new TagNode('-', 49, 'xyz', [], [ new TextNode('-', 58, 'abc'), ]), new TagNode('-', 71, 'foo'), new VariableNode('-', 82, 'x', []), ]), ]), new TextNode('-', 104, 'x'), ]], //0 1 2 3 //01234567890123456789012345678901234567 ['foo?{~{$x|eq|\}$y}|b|\}}$bar', [ new TextNode('-', 0, 'foo'), new TagNode('-', 3, 'if', [], [ new TagNode('-', 5, 'cmp', [ 'text_a' => [new VariableNode('-', 7, 'x', [])], 'op' => [new TextNode('-', 10, 'eq')], 'text_b' => [ new TextNode('-', 13, '}'), new VariableNode('-', 15, 'y', []), ], ], []), new TagNode('-', 3, 'then', [], [ new TextNode('-', 19, 'b'), ]), new TagNode('-', 3, 'else', [], [ new TagNode('-', 21, 'foo'), new TextNode('-', 31, '}'), ]), ]), new VariableNode('-', 34, 'bar', []), ]], ]; } }