class SyntaxTree::StringConcat
“second”
“first” <br>
slash.
StringConcat represents concatenating two strings together using a backward
def ===(other)
def ===(other) other.is_a?(StringConcat) && left === other.left && right === other.right end
def accept(visitor)
def accept(visitor) visitor.visit_string_concat(self) end
def child_nodes
def child_nodes [left, right] end
def copy(left: nil, right: nil, location: nil)
def copy(left: nil, right: nil, location: nil) node = StringConcat.new( left: left || self.left, right: right || self.right, location: location || self.location ) node.comments.concat(comments.map(&:copy)) node end
def deconstruct_keys(_keys)
def deconstruct_keys(_keys) { left: left, right: right, location: location, comments: comments } end
def format(q)
def format(q) q.group do q.format(left) q.text(" \\") q.indent do q.breakable_force q.format(right) end end end
def initialize(left:, right:, location:)
def initialize(left:, right:, location:) @left = left @right = right @location = location @comments = [] end