Method: Interscript::Node::Stage#reverse

Defined in:
lib/interscript/node/stage.rb

#reverseObject



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/interscript/node/stage.rb', line 17

def reverse
  return self if dont_reverse

  @reverse ||= begin
    self.class.new(name,
      doc_name: Interscript::Node::Document.reverse_name(doc_name),
      reverse_run: reverse_run.nil? ? nil : !reverse_run
    ).tap do |r|
      r.children = self.children.reverse.map(&:reverse)
    end
  end
end