@@ -9564,6 +9564,40 @@ var p5100 = p5pkg['main'];
9564
9564
var v_p;
9565
9565
(v_p = (v_pos));
9566
9566
var v_m_index;
9567
+ if ( (p5pkg["Perlito5::Grammar::String"].substr([v_str, v_p, 3], 0) == '->[') ) {
9568
+ (function () {
9569
+ (v_p = ((p5num(v_p) + 3)));
9570
+ (v_m_index = (p5call(p5pkg["Perlito5::Expression"], "list_parse", [v_str, v_p], 0)));
9571
+ if ( p5bool(v_m_index) ) {
9572
+ null;
9573
+ }
9574
+ else {
9575
+ p5pkg["Perlito5::Grammar::String"].die([['syntax error']], null);
9576
+ };
9577
+ var v_exp;
9578
+ (v_exp = ((v_m_index || (v_m_index = new p5HashRef({})))._hash_.p5hget('capture')));
9579
+ (v_p = ((v_m_index || (v_m_index = new p5HashRef({})))._hash_.p5hget('to')));
9580
+ if ( ((p5str(v_exp) == '*undef*') || (p5pkg["Perlito5::Grammar::String"].substr([v_str, v_p, 1], 0) != ']')) ) {
9581
+ p5pkg["Perlito5::Grammar::String"].die([['syntax error']], null);
9582
+ };
9583
+ (v_p)++;
9584
+ (v_m_index || (v_m_index = new p5HashRef({})))._hash_.p5hset('capture', (p5call(p5pkg["Perlito5::AST::Call"], "new", p5list_to_a('method', 'postcircumfix:<[ ]>', 'invocant', (v_m_var || (v_m_var = new p5HashRef({})))._hash_.p5hget('capture'), 'arguments', v_exp), 0)));
9585
+ (v_m_index || (v_m_index = new p5HashRef({})))._hash_.p5hset('to', (v_p));
9586
+ throw(p5call(v_self, "double_quoted_var_with_subscript", [v_m_index, v_interpolate], p5want));
9587
+ })();
9588
+ };
9589
+ if ( (p5pkg["Perlito5::Grammar::String"].substr([v_str, v_p, 3], 0) == '->{') ) {
9590
+ (v_pos = ((p5num(v_pos) + 2)));
9591
+ (v_m_index = (p5call(p5pkg["Perlito5::Expression"], "term_curly", [v_str, v_pos], 0)));
9592
+ if ( p5bool(v_m_index) ) {
9593
+ null;
9594
+ }
9595
+ else {
9596
+ p5pkg["Perlito5::Grammar::String"].die([['syntax error']], null);
9597
+ };
9598
+ (v_m_index || (v_m_index = new p5HashRef({})))._hash_.p5hset('capture', (p5call(p5pkg["Perlito5::AST::Call"], "new", p5list_to_a('method', 'postcircumfix:<{ }>', 'invocant', (v_m_var || (v_m_var = new p5HashRef({})))._hash_.p5hget('capture'), 'arguments', (p5pkg["Perlito5::Match"].flat([v_m_index], p5want) || (p5pkg["Perlito5::Match"].flat([v_m_index], p5want) = new p5ArrayRef([])))._array_.p5aget_array(2)._array_.p5aget(0)), 0)));
9599
+ throw(p5call(v_self, "double_quoted_var_with_subscript", [v_m_index, v_interpolate], p5want));
9600
+ };
9567
9601
if ( (p5pkg["Perlito5::Grammar::String"].substr([v_str, v_p, 1], 0) == '[') ) {
9568
9602
if ( (p5num(v_interpolate) == 2) ) {
9569
9603
(function () {
0 commit comments