Class: AncestorsVisualization::DiagramCreater

Inherits:
Object
  • Object
show all
Defined in:
lib/ancestors_visualization/diagram_creater.rb

Defined Under Namespace

Classes: ObjectRelation

Instance Method Summary collapse

Constructor Details

#initialize(target_objects:, output_path:) ⇒ DiagramCreater

Returns a new instance of DiagramCreater.

Raises:

  • (ArgumentError)


7
8
9
10
11
12
# File 'lib/ancestors_visualization/diagram_creater.rb', line 7

def initialize(target_objects:, output_path:)
  raise ArgumentError, "'#{File.dirname(output_path)}' does not exist." unless Dir.exist?(File.dirname(output_path))

  @target_objects = target_objects
  @output_path = output_path
end

Instance Method Details

#createObject



14
15
16
17
18
19
20
21
# File 'lib/ancestors_visualization/diagram_creater.rb', line 14

def create
  # NOTE 名前空間の描画を減らすため、起点オブジェクトはクラスに限定する
  target_classes.each do |klass|
    draw_diagram(klass)
  end

  output_diagram
end