def p_reference_variable_array_offset(p): 'reference_variable : reference_variable LBRACKET dim_offset RBRACKET' p[0] = ast.ArrayOffset(p[1], p[3], lineno=p.lineno(2))
def p_encaps_var_array_offset(p): 'encaps_var : VARIABLE LBRACKET encaps_var_offset RBRACKET' p[0] = ast.ArrayOffset(ast.Variable(p[1], lineno=p.lineno(1)), p[3], lineno=p.lineno(2))
def p_encaps_var_dollar_curly_array_offset(p): 'encaps_var : DOLLAR_OPEN_CURLY_BRACES STRING_VARNAME LBRACKET expr RBRACKET RBRACE' p[0] = ast.ArrayOffset(ast.Variable('$' + p[2], lineno=p.lineno(2)), p[4], lineno=p.lineno(3))
def p_variable_array_offset(p): 'expr : variable LBRACKET dim_offset RBRACKET' p[0] = ast.ArrayOffset(p[1], p[3], lineno=p.lineno(2))