Module: ChainOptions::Integration

Defined in:
lib/chain_options/integration.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



6
7
8
# File 'lib/chain_options/integration.rb', line 6

def self.included(base)
  base.extend(ClassMethods)
end

Instance Method Details

#build_options(&block) ⇒ Object

Allows setting multiple options in a block. This makes long option chains easier to read.

Examples:

The following expressions are equivalent

instance.option1(value).option2(value).option3 { value3 }
instance.build_options do
  set :option1, value
  set :option2, value2
  set(:option3) { value3 }


79
80
81
# File 'lib/chain_options/integration.rb', line 79

def build_options(&block)
  ChainOptions::Builder.new(self, &block).result
end

#initialize(**options) ⇒ Object



65
66
67
# File 'lib/chain_options/integration.rb', line 65

def initialize(**options)
  @chain_option_values = options
end