class Prism::KeywordHashNode
Represents a hash literal without opening and closing braces.
foo(a: b)
^^^^
Public Class Methods
Source
# File lib/prism/node.rb, line 15436 def initialize(source, node_id, location, flags, elements) @source = source @node_id = node_id @location = location @flags = flags @elements = elements end
Initialize a new KeywordHashNode node.
Public Instance Methods
Source
# File lib/prism/node.rb, line 15522 def elements @elements end
Returns the elements attribute.
Flags
Public Instance Methods
Source
# File lib/prism/node.rb, line 15514 def symbol_keys? flags.anybits?(KeywordHashNodeFlags::SYMBOL_KEYS) end
a keyword hash which only has AssocNode elements all with symbol keys, which means the elements can be treated as keyword arguments
Node Interface
These methods are present on all subclasses of Node. Read the node interface docs for more information.
Public Class Methods
Public Instance Methods
Source
# File lib/prism/node.rb, line 15456 def accept(visitor) visitor.visit_keyword_hash_node(self) end
See Node.accept.
Source
# File lib/prism/node.rb, line 15461 def child_nodes [*elements] end
See Node.child_nodes.
Also aliased as: deconstruct
Source
# File lib/prism/node.rb, line 15478 def comment_targets [*elements] #: Array[Prism::node | Location] end
See Node.comment_targets.
Source
# File lib/prism/node.rb, line 15473 def compact_child_nodes [*elements] end
Source
# File lib/prism/node.rb, line 15486 def copy(node_id: self.node_id, location: self.location, flags: self.flags, elements: self.elements) KeywordHashNode.new(source, node_id, location, flags, elements) end
Creates a copy of self with the given fields, using self as the template.
Source
# File lib/prism/node.rb, line 15466 def each_child_node return to_enum(:each_child_node) unless block_given? elements.each { |node| yield node } end
See Node.each_child_node.
Repository
Methods related to Relocation.