class RedParse::MethodNode
Public Instance Methods
get_while(params,should_be) { |param| ... }
click to toggle source
# File lib/redparse/ripper.rb, line 289 def get_while params,should_be param=nil result=[] result<<yield( param )while should_be===params.first and param=params.shift ensure return result unless result.empty? end
reducer_ident()
click to toggle source
# File lib/redparse/ReduceWithsFor_RedParse_1_8.rb, line 17129 def reducer_ident :MethodNode end
rip(p)
click to toggle source
# File lib/redparse/ripper.rb, line 297 def rip p params=args ? args.dup : [] params2=[] #param=nil params2.push get_while(params,VarNode){|param| p.on_ident param.name} params2.push get_while(params,AssignNode){|param| [p.on_ident(param.left.name), param.right.rip(p)]} get_while(params,UnaryStarNode){|param| params2.push p.on_rest_param p.on_ident param.val.name; break } params2.push get_while(params,VarNode){|param| p.on_ident param.name} get_while(params,UnaryAmpNode){|param| params2.push p.on_blockarg p.on_ident param.val.name; break } params=p.on_params( *params2 ) params=p.on_paren( params ) if has_parens? result=[p.on_ident(name), params, rip_and_rescues(p)] result.unshift receiver.rip(p), p.on_period(".") if receiver p.on_def( *result ) end