# class Puppet::Parser::AST::CaseOpt

Each individual option in a case statement.

### Attributes

statements[RW]
value[RW]

### Public Instance Methods

default?() click to toggle source

Are we the default option?

    # File lib/puppet/parser/ast/caseopt.rb, line 17
    def default?
      # Cache the @default value.
      return @default if defined?(@default)

      @value.each { |subval|
        if subval.is_a?(AST::Default)
          @default = true
          break
        end
      }

      @default ||= false

      @default
    end

each() { |child| ... } click to toggle source

CaseOpt is a bit special -- we just want the value first, so that CaseStatement can compare, and then it will selectively decide whether to fully evaluate this option

    # File lib/puppet/parser/ast/caseopt.rb, line 12
    def each
      [@value,@statements].each { |child| yield child }
    end

eachopt() { |subval| ... } click to toggle source

    # File lib/puppet/parser/ast/caseopt.rb, line 40
    def eachopt
      @value.each { |subval|
        yield subval
      }
    end

eachvalue(scope) { |safeevaluate| ... } click to toggle source

You can specify a list of values; return each in turn.

    # File lib/puppet/parser/ast/caseopt.rb, line 34
    def eachvalue(scope)
      @value.each { |subval|
        yield subval.safeevaluate(scope)
      }
    end

evaluate(scope) click to toggle source

Evaluate the actual statements; this only gets called if our option matched.

    # File lib/puppet/parser/ast/caseopt.rb, line 48
    def evaluate(scope)
      @statements.safeevaluate(scope)
    end