Module: Subconv::Utility

Defined in:
lib/subconv/utility.rb

Defined Under Namespace

Classes: InvalidTimespanError, Timespan

Class Method Summary collapse

Class Method Details

.clamp(value, min, max) ⇒ Object



22
23
24
25
26
27
# 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) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# 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