Module: HackTree::Tools
- Defined in:
- lib/hack_tree/tools.rb
Class Method Summary collapse
-
.compute_name_align(names, limit) ⇒ Object
compute_name_align([“alfa”, “bravo”], 8..16) # => 8.
-
.format_node_name(node, name = nil) ⇒ Object
format_node_name(node) # => “hello” format_node_name(node, “yo”) # => “yo”.
Class Method Details
.compute_name_align(names, limit) ⇒ Object
compute_name_align([“alfa”, “bravo”], 8..16) # => 8
4 5 6 7 8 9 10 11 |
# File 'lib/hack_tree/tools.rb', line 4 def self.compute_name_align(names, limit) (v = eval(vn = "names")).is_a?(klass = Array) or raise ArgumentError, "`#{vn}` must be #{klass}, #{v.class} (#{v.inspect}) given" (v = eval(vn = "limit")).is_a?(klass = Range) or raise ArgumentError, "`#{vn}` must be #{klass}, #{v.class} (#{v.inspect}) given" computed = names.map(&:size).select {|n| n <= limit.max}.max.to_i [limit.min, computed].max end |
.format_node_name(node, name = nil) ⇒ Object
format_node_name(node) # => “hello”
format_node_name(node, "yo") # => "yo"
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/hack_tree/tools.rb', line 15 def self.format_node_name(node, name = nil) case node when Node::Group ::HackTree.conf.group_format when Node::Hack ::HackTree.conf.hack_format else raise ArgumentError, "Unknown node class #{node.class}, SE" end % (name || node.name).to_s end |