Module: KeyValueName::ContainerBuilder

Included in:
FolderBuilder, SchemaBuilder
Defined in:
lib/key_value_name/builders/container_builder.rb

Overview

TODO

Instance Method Summary collapse

Instance Method Details

#extend_with_builders(klass) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/key_value_name/builders/container_builder.rb', line 16

def extend_with_builders(klass)
  @builders.each do |builder|
    child_class = builder.build
    klass.const_set(builder.class_name, child_class)
    if builder.singular?
      build_singular(builder, klass, child_class)
    else
      build_collection(builder, klass, child_class)
    end
  end
  klass
end

#fileObject



8
9
10
# File 'lib/key_value_name/builders/container_builder.rb', line 8

def file(...)
  @builders << FileBuilder.new(...)
end

#folderObject



12
13
14
# File 'lib/key_value_name/builders/container_builder.rb', line 12

def folder(...)
  @builders << FolderBuilder.new(...)
end