Sha256: 6d2034819910d6df791bb801269a280a19b3139dde65507a94620102db519b22

Contents?: true

Size: 774 Bytes

Versions: 5

Compression:

Stored size: 774 Bytes

Contents

require_relative 'base'

module Semi::Variables
  class Integer < Semi::Variables::Base

    #def set(val)
    #  # test to see if the value is a common true value
    #  if value =~ /true|yes|enable/i
    #    @value = true
    #  elsif value =~ /false|no|disable/i
    #    @value = false
    #  else
    #    raise Semi::VariableError, "#{val} trying to be set as a boolean"
    #  end
    #end

    def validate
      self.validate(@value)
    end
    
    def self.validate(value)
      if value.class == Fixnum
        return true
      elsif value.class == Semi::Variables::Integer and value.to_s =~ /^\d+$/
        return true
      end
      false
    end
    
    def method_missing(m, *args, &block)
        @value.to_i.send(m, *args, &block)
      end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
semi-0.5.1 lib/semi/variables/integer.rb
semi-0.5.0 lib/semi/variables/integer.rb
semi-0.4.0 lib/semi/variables/integer.rb
semi-0.3.6 lib/semi/variables/integer.rb
semi-0.3.5 lib/semi/variables/integer.rb