class States::Dsl::Choices

Public Class Methods

new(naming) click to toggle source
# File lib/states/dsl/choices.rb, line 4
def initialize(naming)
  @naming = naming
  @choices = []
end

Public Instance Methods

all(&block) click to toggle source
# File lib/states/dsl/choices.rb, line 23
def all(&block)
  g = ConditionGroup.new("And", @naming)
  g.instance_eval(&block)
  @choices << g
  g
end
any(&block) click to toggle source
# File lib/states/dsl/choices.rb, line 16
def any(&block)
  g = ConditionGroup.new("Or", @naming)
  g.instance_eval(&block)
  @choices << g
  g
end
default(state) click to toggle source
# File lib/states/dsl/choices.rb, line 30
def default(state)
  @default = @naming.ref(state)
end
serializable_hash() click to toggle source
# File lib/states/dsl/choices.rb, line 34
def serializable_hash
  j = {}
  j["Choices"] = @choices.map(&:serializable_hash)
  if @default
    j["Default"] = @default
  end
  j
end
variable(path, &block) click to toggle source
# File lib/states/dsl/choices.rb, line 9
def variable(path, &block)
  c = VariableChoice.new(path, @naming)
  c.instance_eval(&block)
  @choices << c
  c
end