class RunBitVisitor

Public Class Methods

new(startNode) click to toggle source
# File lib/visitor/numbering_visitor.rb, line 182
def initialize(startNode)
  startNode.runBits = 0
end

Public Instance Methods

postVisit(node) click to toggle source
# File lib/visitor/numbering_visitor.rb, line 194
def postVisit(node)
end
preVisit(node) click to toggle source
# File lib/visitor/numbering_visitor.rb, line 186
def preVisit(node)
  if (node.parent != nil) then
    node.runBits = node.parent.runBits
  end
  node.runBits = node.runBits | getBit(node.runTail.binaryTreeHeight)
  return true
end

Private Instance Methods

getBit(n) click to toggle source
# File lib/visitor/numbering_visitor.rb, line 198
def getBit(n)
  1 << (n-1)
end