module RubyEnum::InstanceMethods
Public Class Methods
new(name, value)
click to toggle source
# File lib/ruby_enum.rb, line 57 def initialize(name, value) @_name = name @_value = value end
Public Instance Methods
clone()
click to toggle source
# File lib/ruby_enum.rb, line 47 def clone raise TypeError, "can't clone instance of enum #{self.class}" end
dup()
click to toggle source
# File lib/ruby_enum.rb, line 51 def dup raise TypeError, "can't dupe instance of enum #{self.class}" end
method_missing(method, *args, &block)
click to toggle source
Calls superclass method
# File lib/ruby_enum.rb, line 14 def method_missing(method, *args, &block) if method.to_s =~ /^(.*)\?/ enum_names = self.class.all.map(&:name) expected_name = $1.to_sym if enum_names.include?(expected_name) return name == expected_name end end super end
name()
click to toggle source
@return [Symbol] the name of the enumeration instance
# File lib/ruby_enum.rb, line 43 def name @_name end
respond_to?(method)
click to toggle source
Calls superclass method
# File lib/ruby_enum.rb, line 26 def respond_to?(method) if method.to_s =~ /^(.*)\?/ enum_names = self.class.all.map(&:name) return enum_names.include? $1.to_sym else super end super end
value()
click to toggle source
@return [String] the associated value of the enumeration instance
# File lib/ruby_enum.rb, line 38 def value @_value end