class GoonModelGen::Golang::Enum

Attributes

base_type[R]
base_type_name[R]
elements[R]

Public Class Methods

new(name, base_type_name) click to toggle source

@param name [String] @param base_type_name [String]

Calls superclass method
# File lib/goon_model_gen/golang/enum.rb, line 20
def initialize(name, base_type_name)
  super(name)
  @base_type_name = base_type_name
  @elements = []
end

Public Instance Methods

add(value, name) click to toggle source

@param value [Object] @param name [String]

# File lib/goon_model_gen/golang/enum.rb, line 28
def add(value, name)
  elements << Element.new(value, name)
end
each_value_and_name() { |value, name| ... } click to toggle source

@yieldparam value [Object] @yieldparam name [String]

# File lib/goon_model_gen/golang/enum.rb, line 34
def each_value_and_name
  elements.each do |i|
    yield(i.value, i.name)
  end
end
resolve(pkgs) click to toggle source

@param pkgs [Packages]

# File lib/goon_model_gen/golang/enum.rb, line 41
def resolve(pkgs)
  @base_type = pkgs.type_for(base_type_name) || raise("#{base_type_name.inspect} not found for #{name}")
end