def r(ctx: Context, token: TokenInfo): ctx.pop_state() ctx.cache.annotation = A.DECL ctx.push_state(State.IN_LBDX_CALL) token.annotation = A.DECL_LPAR ctx.push_op(token) return actions.StopBuffer()
def r(ctx: Context, token: TokenInfo): t, state = ctx.pop_op() if state not in (State.EXPECT_LBDX_LSQB, State.IN_LBDX_CALL) or not tk.ISMATCHED(t, token): ctx.error() if t.annotation == A.DECL_LPAR: ctx.pop_state() ctx.pop_state() token.annotation = A.DECL_RPAR
def r(ctx: Context, token: TokenInfo): if ctx.pop_op()[0].annotation == A.CLS_BODY_LSQB: ctx.pop_state() ctx.push_state(State.EXPECT_SUBCLS_DOT) sentinel = TokenInfo.new_sentinel_before(token, A.STMT_END) ctx.push_ret(sentinel) token.annotation = A.CLS_BODY_RSQB ctx.push_ret(token) return actions.Default(dont_store=True)
def r(ctx: Context, token: TokenInfo): token.annotation = A.CLS_HEAD_LSQB ctx.push_op(token) ctx.pop_state() ctx.push_state(State.IN_LBDX_CLS_HEAD) _annotate_clause_declarer(ctx) ctx.cache = None if ctx.is_buffering(): return actions.StopBuffer()
def r(ctx: Context, token: TokenInfo): sentinel = TokenInfo.new_sentinel_before(token, A.STMT_END) ctx.push_ret(sentinel) token.annotation = A.STMT_COMMA ctx.push_ret(token) sentinel = TokenInfo.new_sentinel_after(token, A.STMT_START) ctx.push_ret(sentinel) return actions.Default(dont_store=True)
def r(ctx: Context, token: TokenInfo): ctx.pop_state() ctx.push_state(State.IN_LBDX_BODY_LIST) token.annotation = A.BODY_LSQB ctx.push_op(token) ctx.push_ret(token) sentinel = TokenInfo.new_sentinel_after(token, A.STMT_START) ctx.push_ret(sentinel) return actions.Default(dont_store=True)
def r(ctx: Context, token: TokenInfo): if ctx.last_op[0].annotation not in (A.BODY_LSQB, A.CLS_BODY_LSQB): return sentinel = TokenInfo.new_sentinel_before(token, A.STMT_END) ctx.push_ret(sentinel) token.annotation = A.STMT_COMMA ctx.push_ret(token) sentinel = TokenInfo.new_sentinel_after(token, A.STMT_START) ctx.push_ret(sentinel) return actions.Default(dont_store=True)
def r(ctx: Context, token: TokenInfo): ctx.pop_state() sentinel = TokenInfo.new_sentinel_before(token, A.STMT_END) ctx.push_ret(sentinel) token.annotation = A.STMT_COMMA ctx.push_ret(token) sentinel = TokenInfo.new_sentinel_after(token, A.STMT_START) ctx.push_ret(sentinel) if ctx.is_buffering(): return actions.StopBuffer(dont_store=True) return actions.Default(dont_store=True)
def r(ctx: Context, token: TokenInfo): if ctx.is_buffering(): return actions.StopBuffer(dont_consume=True) ctx.pop_state() ctx.push_state(State.IN_LBDX_CLS_BODY) token.annotation = A.CLS_BODY_LSQB ctx.push_op(token) _annotate_clause_declarer(ctx) ctx.cache = None ctx.push_ret(token) sentinel = TokenInfo.new_sentinel_after(token, A.STMT_START) ctx.push_ret(sentinel) return actions.Default(dont_store=True)
def r(ctx: Context, token: TokenInfo): ctx.pop_state() ctx.cache[0].annotation = A.AUGASSIGN_START token.annotation = A.AUGASSIGN_END return actions.StopBuffer()
def r(ctx: Context, token: TokenInfo): if ctx.pop_op()[1] == State.EXPECT_CLS_HEAD_LSQB: ctx.pop_state() ctx.push_state(State.EXPECT_CLS_BODY_LSQB) token.annotation = A.CLS_HEAD_RSQB
def r(ctx: Context, token: TokenInfo): if ctx.last_op[0].annotation != A.DECL_LPAR: ctx.error() token.annotation = A.DECL_ARG_COMMA
def r(ctx: Context, token: TokenInfo): ctx.push_state(State.IN_LBDX_LAMBDA) token.annotation = A.DECL_LAMBDA