class Doem::Instruction

Building Instruction

Attributes

context[R]

Public Class Methods

from_file(filename) click to toggle source
# File lib/doem/instruction.rb, line 30
def self.from_file(filename)
  script_content = IO.read(filename)
  instruction = Instruction.new
  instruction.instance_eval(script_content)
  instruction
end
new(context = Context.new) click to toggle source
# File lib/doem/instruction.rb, line 6
def initialize(context = Context.new)
  @context = context
end

Public Instance Methods

from(klass, *initialization_params) click to toggle source
# File lib/doem/instruction.rb, line 14
def from(klass, *initialization_params)
  @context.providers << { klass: klass, args: initialization_params }
end
post_build(&block) click to toggle source
# File lib/doem/instruction.rb, line 26
def post_build(&block)
  @context.post_hooks << { block: block }
end
pre_build(&block) click to toggle source
# File lib/doem/instruction.rb, line 10
def pre_build(&block)
  @context.pre_hooks << { block: block }
end
to(klass, *initialization_params) click to toggle source
# File lib/doem/instruction.rb, line 22
def to(klass, *initialization_params)
  @context.consumers << { klass: klass, args: initialization_params }
end
tweak(klass = nil, *initialization_params, &block) click to toggle source
# File lib/doem/instruction.rb, line 18
def tweak(klass = nil, *initialization_params, &block)
  @context.tweakers << { klass: klass, args: initialization_params, block: block }
end