класс Prism::SourceFileNode
Представляет использование ключевого слова ‘__FILE__`.
__FILE__ ^^^^^^^^
Атрибуты
Представляет путь к файлу, который анализируется. Это напрямую соответствует параметру ‘filepath` в различных API `Prism::parse*`.
Публичные методы класса
Исходный код
# File lib/prism/node.rb, line 16509 def initialize(source, node_id, location, flags, filepath) @source = source @node_id = node_id @location = location @flags = flags @filepath = filepath end
Инициализирует новый узел SourceFileNode.
Исходный код
# File lib/prism/node.rb, line 16584 def self.type :source_file_node end
Возвращает символическое представление типа этого узла. См. ‘Node::type`.
Публичные методы экземпляра
Исходный код
# File lib/prism/node.rb, line 16590
def ===(other)
other.is_a?(SourceFileNode) &&
(flags === other.flags) &&
(filepath === other.filepath)
end Реализует сравнение на равенство узлов. Это фактически ==, но без сравнения значений местоположений. Местоположения проверяются только на наличие.
Исходный код
# File lib/prism/node.rb, line 16518 def accept(visitor) visitor.visit_source_file_node(self) end
def accept: (Visitor visitor) -> void
Исходный код
# File lib/prism/node.rb, line 16523 def child_nodes [] end
def child_nodes: () -> Массив[nil | Узел]
Исходный код
# File lib/prism/node.rb, line 16533 def comment_targets [] #: Array[Prism::node | Location] end
def comment_targets: () -> Массив[Узел | Местоположение]
Исходный код
# File lib/prism/node.rb, line 16528 def compact_child_nodes [] end
def compact_child_nodes: () -> Массив
Исходный код
# File lib/prism/node.rb, line 16538 def copy(node_id: self.node_id, location: self.location, flags: self.flags, filepath: self.filepath) SourceFileNode.new(source, node_id, location, flags, filepath) end
def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?filepath: String) -> SourceFileNode
Исходный код
# File lib/prism/node.rb, line 16546
def deconstruct_keys(keys)
{ node_id: node_id, location: location, filepath: filepath }
end def deconstruct_keys: (Массив keys) -> { node_id: Integer, location: Location, filepath: String }
Исходный код
# File lib/prism/node.rb, line 16556 def forced_binary_encoding? flags.anybits?(StringFlags::FORCED_BINARY_ENCODING) end
def forced_binary_encoding?: () -> bool
Исходный код
# File lib/prism/node.rb, line 16551 def forced_utf8_encoding? flags.anybits?(StringFlags::FORCED_UTF8_ENCODING) end
def forced_utf8_encoding?: () -> bool
Исходный код
# File lib/prism/node.rb, line 16561 def frozen? flags.anybits?(StringFlags::FROZEN) end
def frozen?: () -> bool
Исходный код
# File lib/prism/node.rb, line 16574 def inspect InspectVisitor.compose(self) end
def inspect -> String
Исходный код
# File lib/prism/node.rb, line 16566 def mutable? flags.anybits?(StringFlags::MUTABLE) end
def mutable?: () -> bool
Исходный код
# File lib/prism/node.rb, line 16579 def type :source_file_node end
Возвращает символическое представление типа этого узла. См. ‘Node#type`.
Ruby Core © 1993–2024 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.