Method: AutoC::Module#generate!

Defined in:
lib/autoc/code.rb

#generate!Object



92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'lib/autoc/code.rb', line 92

def generate!
  @header = new_header
  @sources = []
  (1..source_count).each {|i| @sources << new_source(i)}
  @main_source = @sources.first
  @smallest_source = @main_source
  # It appears that computing the size of a source might be a fairly expensive operation so do it only when neccessary
  refresh_smallest_source = source_count > 1
  @entities.each do |e|
    @header << e
    @smallest_source = @sources.sort_by {|s| s.size}.first if refresh_smallest_source
    @sources.each {|s| e.attach(s)}
  end
  @header.generate
  @sources.each {|s| s.generate}
end