Class: Orchparty::ApplicationBuilder
- Inherits:
-
Object
- Object
- Orchparty::ApplicationBuilder
- Defined in:
- lib/orchparty/dsl_parser.rb
Instance Method Summary collapse
- #all(&block) ⇒ Object
- #build ⇒ Object
-
#initialize(name) ⇒ ApplicationBuilder
constructor
A new instance of ApplicationBuilder.
- #mix(name) ⇒ Object
- #mixin(name, &block) ⇒ Object
- #service(name, &block) ⇒ Object
- #variables(&block) ⇒ Object
Constructor Details
#initialize(name) ⇒ ApplicationBuilder
Returns a new instance of ApplicationBuilder.
76 77 78 |
# File 'lib/orchparty/dsl_parser.rb', line 76 def initialize(name) @application = AST::Application.new(name: name, services: {}, mix: [], mixins: {}) end |
Instance Method Details
#all(&block) ⇒ Object
91 92 93 94 95 96 |
# File 'lib/orchparty/dsl_parser.rb', line 91 def all(&block) builder = AllBuilder.new builder.instance_eval(&block) @application.all = builder._build self end |
#build ⇒ Object
112 113 114 |
# File 'lib/orchparty/dsl_parser.rb', line 112 def build @application end |
#mix(name) ⇒ Object
80 81 82 |
# File 'lib/orchparty/dsl_parser.rb', line 80 def mix(name) @application.mix << name end |
#mixin(name, &block) ⇒ Object
84 85 86 87 88 89 |
# File 'lib/orchparty/dsl_parser.rb', line 84 def mixin(name, &block) builder = CommonBuilder.new builder.instance_eval(&block) @application.mixins[name] = builder._build self end |
#service(name, &block) ⇒ Object
105 106 107 108 109 110 |
# File 'lib/orchparty/dsl_parser.rb', line 105 def service(name, &block) builder = ServiceBuilder.new(name) builder.instance_eval(&block) @application.services[name] = builder._build self end |
#variables(&block) ⇒ Object
98 99 100 101 102 103 |
# File 'lib/orchparty/dsl_parser.rb', line 98 def variables(&block) builder = HashBuilder.new builder.instance_eval(&block) @application._variables = builder._build self end |