Class: Rscons::BuilderBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/rscons/builder_builder.rb

Overview

A class that knows how to build an instance of another Builder class when it is needed.

Instance Method Summary collapse

Constructor Details

#initialize(builder_class, *builder_args, &builder_block) ⇒ BuilderBuilder

Create a BuilderBuilder.

Parameters:

  • builder_class (Class)

    The Rscons::Builder class to be instantiated.

  • builder_args (Array)

    Any extra arguments to be passed to the builder class.

  • builder_block (Proc, nil)

    Optional block to be passed to the Rscons::Builder class's #new method.



14
15
16
17
18
# File 'lib/rscons/builder_builder.rb', line 14

def initialize(builder_class, *builder_args, &builder_block)
  @builder_class = builder_class
  @builder_args = builder_args
  @builder_block = builder_block
end

Instance Method Details

#new(*args) ⇒ Object

Act like a regular Rscons::Builder class object but really instantiate the requested Rscons::Builder class, potentially with extra arguments and a block.



22
23
24
# File 'lib/rscons/builder_builder.rb', line 22

def new(*args)
  @builder_class.new(*@builder_args, *args, &@builder_block)
end