class QemuToolkit::DSL::File

Attributes

objects[R]

Public Class Methods

new() click to toggle source
# File lib/qemu-toolkit/dsl.rb, line 36
def initialize
  @objects = []
end

Public Instance Methods

add_toplevel_target(target, producer) click to toggle source
# File lib/qemu-toolkit/dsl.rb, line 48
def add_toplevel_target target, producer
  define_singleton_method(target) { |*args, &block| 
    object = producer.call(*args) 
    Unit.new(object, &block)
    
    @objects << object
  }
end
load_file(path) click to toggle source
# File lib/qemu-toolkit/dsl.rb, line 39
def load_file(path)
  eval(
    ::File.read(path), 
    binding, 
    path)
end
require(file) click to toggle source
# File lib/qemu-toolkit/dsl.rb, line 45
def require file
  Kernel.require file
end