Module: CodeMiner::ParamsProcessor
- Included in:
- Parser
- Defined in:
- lib/codeminer/processors/params_processor.rb
Instance Method Summary collapse
- #on_block_var(params, _) ⇒ Object
- #on_mlhs_add(params, param) ⇒ Object
- #on_mlhs_new ⇒ Object
- #on_mlhs_paren(exp) ⇒ Object
- #on_mrhs_add(params, exp) ⇒ Object
- #on_mrhs_add_star(params, exp) ⇒ Object (also: #on_mlhs_add_star)
- #on_mrhs_new ⇒ Object
- #on_mrhs_new_from_args(args) ⇒ Object
- #on_params(positional, optional, splat, _, keyword, _, block) ⇒ Object
- #on_paren(params) ⇒ Object
- #on_rest_param(token) ⇒ Object
Instance Method Details
#on_block_var(params, _) ⇒ Object
26 27 28 |
# File 'lib/codeminer/processors/params_processor.rb', line 26 def on_block_var(params, _) params end |
#on_mlhs_add(params, param) ⇒ Object
38 39 40 |
# File 'lib/codeminer/processors/params_processor.rb', line 38 def on_mlhs_add(params, param) params.add(param) end |
#on_mlhs_new ⇒ Object
30 31 32 |
# File 'lib/codeminer/processors/params_processor.rb', line 30 def on_mlhs_new ExpressionContainer.new([], :mlhs) end |
#on_mlhs_paren(exp) ⇒ Object
42 43 44 45 46 47 48 49 |
# File 'lib/codeminer/processors/params_processor.rb', line 42 def on_mlhs_paren(exp) if exp.kind_of?(Token) DestructuredParamExpression.new(exp, exp.src_extract) else exp.src = extract_src_by_token(@parens_begin.pop) exp end end |
#on_mrhs_add(params, exp) ⇒ Object
55 56 57 |
# File 'lib/codeminer/processors/params_processor.rb', line 55 def on_mrhs_add(params, exp) params.add(exp) end |
#on_mrhs_add_star(params, exp) ⇒ Object Also known as: on_mlhs_add_star
59 60 61 |
# File 'lib/codeminer/processors/params_processor.rb', line 59 def on_mrhs_add_star(params, exp) params.add(SplatExpression.new(exp, extract_src(exp.line, exp.column - 1, exp.end_line, exp.end_column))) end |
#on_mrhs_new ⇒ Object
34 35 36 |
# File 'lib/codeminer/processors/params_processor.rb', line 34 def on_mrhs_new ExpressionContainer.new([], :values) end |
#on_mrhs_new_from_args(args) ⇒ Object
51 52 53 |
# File 'lib/codeminer/processors/params_processor.rb', line 51 def on_mrhs_new_from_args(args) ExpressionContainer.new(args.each, :values, args.src_extract) end |
#on_params(positional, optional, splat, _, keyword, _, block) ⇒ Object
5 6 7 8 9 |
# File 'lib/codeminer/processors/params_processor.rb', line 5 def on_params(positional, optional, splat, _, keyword, _, block) ParamsExpression.new(positional_params(positional), optional_params(optional), keyword_params(keyword), splat_param(splat), block).tap do |params| params.src = extract_src_by_tokens(params) if params.line end end |
#on_paren(params) ⇒ Object
21 22 23 24 |
# File 'lib/codeminer/processors/params_processor.rb', line 21 def on_paren(params) params.src = extract_src(params.line, params.column - 1, params.end_line, params.end_column + 1) if params && params.src_extract params end |
#on_rest_param(token) ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/codeminer/processors/params_processor.rb', line 11 def on_rest_param(token) if token token.column -= 1 src = extract_src(token.line, token.column, token.end_line, token.end_column) else src = extract_src(lineno(), column() - 1, lineno(), column()) end SplatExpression.new(token, src) end |