Class: LanguageServer::Project::ConstPathRef

Inherits:
Node
  • Object
show all
Defined in:
lib/language_server/project/node.rb

Instance Method Summary collapse

Methods inherited from Node

#==, attribute_names, attributes, #attributes, #eql?, #hash, #local_path, #remote_path

Instance Method Details

#charactersObject



138
139
140
# File 'lib/language_server/project/node.rb', line 138

def characters
  (nodes.first.characters.begin)..(nodes.last.character)
end

#full_nameObject



154
155
156
# File 'lib/language_server/project/node.rb', line 154

def full_name
  names.join("::")
end

#inspectObject



158
159
160
# File 'lib/language_server/project/node.rb', line 158

def inspect
  "<ConstPathRef #{full_name}#L#{lineno}(#{characters})>"
end

#linesObject



134
135
136
# File 'lib/language_server/project/node.rb', line 134

def lines
  (nodes.first.lineno)..(nodes.last.lineno)
end

#nameObject



146
147
148
# File 'lib/language_server/project/node.rb', line 146

def name
  nodes.last.name
end

#namesObject



150
151
152
# File 'lib/language_server/project/node.rb', line 150

def names
  nodes.flat_map(&:names)
end

#unshift_namespace(class_or_module) ⇒ Object



142
143
144
# File 'lib/language_server/project/node.rb', line 142

def unshift_namespace(class_or_module)
  nodes.first.unshift_namespace(class_or_module)
end