Class: RBelly::Nodes::ResolveNode
- Defined in:
- lib/rbelly/nodes/resolve_node.rb
Instance Attribute Summary
Attributes inherited from Node
#comments, #filename, #line, #value
Instance Method Summary collapse
- #==(other) ⇒ Object (also: #=~)
Methods inherited from Node
#===, #each, #initialize, #pointcut, #to_dots, #to_ecma, #to_real_sexp, #to_sexp
Methods included from Visitable
Constructor Details
This class inherits a constructor from RBelly::Nodes::Node
Instance Method Details
#==(other) ⇒ Object Also known as: =~
4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/rbelly/nodes/resolve_node.rb', line 4 def ==(other) return true if super if @value =~ /^[A-Z]/ place = [Object, Module, RBelly::Nodes].find { |x| x.const_defined?(@value.to_sym) } return false unless place klass = place.const_get(@value.to_sym) return true if klass && other.is_a?(klass) || other.value.is_a?(klass) end false end |