Class: AmsLayout::Writer
- Inherits:
-
Object
- Object
- AmsLayout::Writer
- Defined in:
- lib/ams_layout/writer.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #aliases ⇒ Object
- #aliases=(data) ⇒ Object
-
#source_file_name ⇒ Object
attr_writer :aliases.
- #write(stream, layout) ⇒ Object
Instance Attribute Details
#class_name ⇒ Object
23 24 25 |
# File 'lib/ams_layout/writer.rb', line 23 def class_name @class_name ||= AmsLayout.configuration.layout_class_name end |
Instance Method Details
#aliases ⇒ Object
27 28 29 |
# File 'lib/ams_layout/writer.rb', line 27 def aliases @aliases ||= {} end |
#aliases=(data) ⇒ Object
31 32 33 |
# File 'lib/ams_layout/writer.rb', line 31 def aliases=(data) @aliases = Hash(data) end |
#source_file_name ⇒ Object
attr_writer :aliases
19 20 21 |
# File 'lib/ams_layout/writer.rb', line 19 def source_file_name class_name.ams_layout_snakecase + '.rb' end |
#write(stream, layout) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/ams_layout/writer.rb', line 35 def write stream, layout stream << header layout.each do |section_label, fields| stream << section(section_label) fields.each do |fld| stream << field(fld[:label], fld[:id], fld[:type]) write_aliases stream, fld[:label], fld[:id], fld[:type] end # fields end # layout stream << end |