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



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

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

#full_nameObject



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

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

#inspectObject



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

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

#linesObject



131
132
133
# File 'lib/language_server/project/node.rb', line 131

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

#nameObject



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

def name
  nodes.last.name
end

#namesObject



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

def names
  nodes.flat_map(&:names)
end

#unshift_namespace(class_or_module) ⇒ Object



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

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