class Moguro::Processors::ArgumentsProcessor
Attributes
rule[R]
Public Class Methods
new(klass, clause)
click to toggle source
Calls superclass method
# File lib/moguro/processors/arguments_processor.rb, line 8 def initialize(klass, clause) @klass = klass @clause = clause super() end
Public Instance Methods
on_const(node)
click to toggle source
Calls superclass method
# File lib/moguro/processors/arguments_processor.rb, line 14 def on_const(node) symbol = node.children.last validator = Moguro::Types.get_type_validator_from_const(get_const(symbol)) @array_processor = nil @clause.add_type(validator) super node end
on_nil(_node)
click to toggle source
# File lib/moguro/processors/arguments_processor.rb, line 22 def on_nil(_node) validator = Moguro::Types.get_type_validator_from_const(nil) @clause.add_type(validator) end
on_send(node)
click to toggle source
# File lib/moguro/processors/arguments_processor.rb, line 27 def on_send(node) return unless node.children[1] == :[] @clause.pop_type @clause.add_type( Moguro::Processors::EnumerableProcessor.generate_type_validator(node, @klass) ) end
Private Instance Methods
get_const(symbol)
click to toggle source
# File lib/moguro/processors/arguments_processor.rb, line 37 def get_const(symbol) @klass.const_get(symbol) end