module Subconv::Utility

Public Class Methods

clamp(value, min, max) click to toggle source
# File lib/subconv/utility.rb, line 22
def self.clamp(value, min, max)
  return min if value < min
  return max if value > max

  value
end
node_to_tree_string(node, level = 0) click to toggle source
# File lib/subconv/utility.rb, line 29
def self.node_to_tree_string(node, level = 0)
  node_text = node.class.to_s.dup
  if node.is_a?(TextNode)
    node_text << " \"#{node.text}\""
  elsif node.is_a?(ColorNode)
    node_text << " #{node.color}"
  end
  result = "\t" * level + node_text + "\n"
  if node.is_a?(ContainerNode)
    node.children.each { |child|
      result << node_to_tree_string(child, level + 1)
    }
  end
  result
end