class Parser::Context
Context of parsing that is represented by a stack of scopes.
Supported states: + :class - in the class body (class A; end) + :module - in the module body (module M; end) + :sclass - in the singleton class body (class << obj; end) + :def - in the method body (def m; end) + :defs - in the singleton method body (def self.m; end) + :def_open_args - in the arglist of the method definition
keep in mind that it's set **only** after reducing the first argument, if you need to handle the first argument check `lex_state == expr_fname`
+ :block - in the block body (tap {}) + :lambda - in the lambda body (-> {})
Constants
- FLAGS
Public Class Methods
new()
click to toggle source
# File lib/parser/context.rb, line 28 def initialize reset end
Public Instance Methods
in_dynamic_block?()
click to toggle source
# File lib/parser/context.rb, line 44 def in_dynamic_block? in_block || in_lambda end
reset()
click to toggle source
# File lib/parser/context.rb, line 32 def reset @in_defined = false @in_kwarg = false @in_argdef = false @in_def = false @in_class = false @in_block = false @in_lambda = false end