class Deptree::Definition

Public Class Methods

add(configurable, args, block) click to toggle source
# File lib/deptree/definition.rb, line 4
def self.add(configurable, args, block)
  parser = ArgumentsParser.new(args).parse!
  prerequisites = Dependency::PrerequisitesProxy.new(parser.prerequisites, configurable.registry)
  name = parser.name

  dependency = Dependency.new(name, prerequisites, configurable.helpers)
  new(dependency).instance_eval(&block)
  configurable.registry.add(dependency.name, dependency)
end
new(dependency) click to toggle source
# File lib/deptree/definition.rb, line 14
def initialize(dependency)
  @dependency = dependency
end

Public Instance Methods

method_missing(name, &behaviour) click to toggle source
# File lib/deptree/definition.rb, line 18
def method_missing(name, &behaviour)
  @dependency.action(name, &behaviour)
end