Class: Yoda::Parsing::Scopes::MethodDefinition
- Inherits:
-
Base
- Object
- Base
- Yoda::Parsing::Scopes::MethodDefinition
show all
- Defined in:
- lib/yoda/parsing/scopes/method_definition.rb
Overview
Wrapper class for instance method node. “‘ (def :foo (args) nil) “def foo; end”
~~~ keyword
~~~ name
~~~ end
~~~~~~~~~~~~ expression
“‘
Instance Attribute Summary
Attributes inherited from Base
#child_scopes, #method_definitions, #node, #parent
Instance Method Summary
collapse
Methods inherited from Base
#find_evaluation_root_scope, #initialize, #inner_location?
Instance Method Details
#ancestor_scopes ⇒ Array<String>
63
64
65
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 63
def ancestor_scopes
parent.ancestor_scopes
end
|
#arg_node ⇒ Parser::AST::Node
21
22
23
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 21
def arg_node
node.children[1]
end
|
#body_node ⇒ Parser::AST::Node
26
27
28
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 26
def body_node
node.children[2]
end
|
#body_nodes ⇒ Array<Parser::AST::Node>
31
32
33
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 31
def body_nodes
[body_node]
end
|
#full_name ⇒ String
36
37
38
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 36
def full_name
"#{namespace.full_name}##{name}"
end
|
#kind ⇒ Object
49
50
51
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 49
def kind
:method
end
|
#method? ⇒ Boolean
53
54
55
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 53
def method?
true
end
|
#name ⇒ Symbol
16
17
18
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 16
def name
node.children[0]
end
|
#namespace_name ⇒ String
41
42
43
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 41
def namespace_name
namespace.full_name
end
|
#scope_name ⇒ String
58
59
60
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 58
def scope_name
parent.scope_name
end
|
#singleton? ⇒ Boolean
45
46
47
|
# File 'lib/yoda/parsing/scopes/method_definition.rb', line 45
def singleton?
false
end
|