class Bosh::Template::EvaluationLink

Attributes

instances[R]
properties[R]

Public Class Methods

new(instances, properties) click to toggle source
# File lib/bosh/template/evaluation_link.rb, line 9
def initialize(instances, properties)
  @instances = instances
  @properties = properties
end

Public Instance Methods

if_p(*names) { |*values| ... } click to toggle source
# File lib/bosh/template/evaluation_link.rb, line 26
def if_p(*names)
  values = names.map do |name|
    value = lookup_property(@properties, name)
    return ActiveElseBlock.new(self) if value.nil?
    value
  end

  yield *values
  InactiveElseBlock.new
end
p(*args) click to toggle source
# File lib/bosh/template/evaluation_link.rb, line 14
def p(*args)
  names = Array(args[0])

  names.each do |name|
    result = lookup_property(@properties, name)
    return result unless result.nil?
  end

  return args[1] if args.length == 2
  raise UnknownProperty.new(names)
end