Class: WebIDL::Ast::Node
- Inherits:
-
Object
show all
- Defined in:
- lib/webidl/ast/node.rb
Direct Known Subclasses
Argument, Attribute, Const, Exception, ExtendedAttribute, Field, ImplementsStatement, Interface, Module, Operation, ScopedName, Type, TypeDef
Instance Method Summary
collapse
Constructor Details
#initialize(parent = nil) ⇒ Node
Returns a new instance of Node.
5
6
7
|
# File 'lib/webidl/ast/node.rb', line 5
def initialize(parent = nil)
@parent = parent
end
|
Instance Method Details
#accept(visitor, &blk) ⇒ Object
19
20
21
|
# File 'lib/webidl/ast/node.rb', line 19
def accept(visitor, &blk)
visitor.send("visit_#{snake_name}", self, &blk)
end
|
#qualified_name ⇒ Object
9
10
11
12
13
14
15
16
17
|
# File 'lib/webidl/ast/node.rb', line 9
def qualified_name
return unless @name
if @parent.respond_to?(:qualified_name)
"#{@parent.qualified_name}::#{@name}"
else
"::#{@name}"
end
end
|
#snake_name ⇒ Object
23
24
25
|
# File 'lib/webidl/ast/node.rb', line 23
def snake_name
self.class.name.split("::").last.snake_case
end
|