class Architect::Class

Class in a class diagram

Attributes

graphnode[RW]
markup[RW]

Public Class Methods

new(markup) click to toggle source
# File lib/architect/class.rb, line 9
def initialize(markup)
  if markup.index("|").nil?
    @name = markup
  else
    tokens = /^(?<name>.+?)\|/.match(markup)
    @name = tokens[:name]
  end
  @markup = format(markup)
  @style = {shape: "record"}
end

Public Instance Methods

format(markup) click to toggle source
# File lib/architect/class.rb, line 20
def format(markup)
  return "{" + markup.gsub(";", "\\n") + "}"
end
graph(g) click to toggle source

Add class to Graphviz

# File lib/architect/class.rb, line 25
def graph(g)
  @graphnode = g.add_nodes(@markup, @style)
end