Module: YARD::Templates::Helpers::UMLHelper
- Defined in:
- lib/yard/templates/helpers/uml_helper.rb
Overview
Helpers for UML template format
Instance Method Summary collapse
-
#format_path(object) ⇒ String
Formats the path of an object for Graphviz syntax.
-
#h(text) ⇒ String
Encodes text in escaped Graphviz syntax.
-
#tidy(data) ⇒ String
Tidies data by formatting and indenting text.
-
#uml_visibility(object) ⇒ String
Official UML visibility prefix syntax for an object given its visibility.
Instance Method Details
#format_path(object) ⇒ String
Formats the path of an object for Graphviz syntax
20 21 22 |
# File 'lib/yard/templates/helpers/uml_helper.rb', line 20 def format_path(object) object.path.gsub('::', '_') end |
#h(text) ⇒ String
Encodes text in escaped Graphviz syntax
27 28 29 |
# File 'lib/yard/templates/helpers/uml_helper.rb', line 27 def h(text) text.to_s.gsub(/(\W)/, '\\\\\1') end |
#tidy(data) ⇒ String
Tidies data by formatting and indenting text
34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/yard/templates/helpers/uml_helper.rb', line 34 def tidy(data) indent = 0 data.split(/\n/).map do |line| line.gsub!(/^\s*/, '') next if line.empty? indent -= 1 if line =~ /^\s*\}\s*$/ line = (' ' * (indent * 2)) + line indent += 1 if line =~ /\{\s*$/ line end.compact.join("\n") + "\n" end |
#uml_visibility(object) ⇒ String
Official UML visibility prefix syntax for an object given its visibility
9 10 11 12 13 14 15 |
# File 'lib/yard/templates/helpers/uml_helper.rb', line 9 def uml_visibility(object) case object.visibility when :public; '+' when :protected; '#' when :private; '-' end end |