Class: Orchparty::MixinBuilder
- Inherits:
-
Object
- Object
- Orchparty::MixinBuilder
- Defined in:
- lib/orchparty/dsl_parser.rb
Instance Method Summary collapse
- #build ⇒ Object
-
#initialize(name) ⇒ MixinBuilder
constructor
A new instance of MixinBuilder.
- #mixin(name, &block) ⇒ Object
- #service(name, &block) ⇒ Object
Constructor Details
#initialize(name) ⇒ MixinBuilder
Returns a new instance of MixinBuilder.
50 51 52 |
# File 'lib/orchparty/dsl_parser.rb', line 50 def initialize(name) @mixin = AST::Mixin.new(name: name, services: {}, mixins: {}) end |
Instance Method Details
#build ⇒ Object
69 70 71 |
# File 'lib/orchparty/dsl_parser.rb', line 69 def build @mixin end |
#mixin(name, &block) ⇒ Object
62 63 64 65 66 67 |
# File 'lib/orchparty/dsl_parser.rb', line 62 def mixin(name, &block) builder = ServiceBuilder.new(name) builder.instance_eval(&block) @mixin.mixins[name] = builder._build self end |
#service(name, &block) ⇒ Object
54 55 56 57 58 59 60 |
# File 'lib/orchparty/dsl_parser.rb', line 54 def service(name, &block) builder = ServiceBuilder.new(name) builder.instance_eval(&block) @mixin.services[name] = builder._build @mixin.mixins[name] = builder._build self end |