# File lib/puppet/parser/scope.rb, line 72 72: def self.number?(value) 73: return nil unless value.is_a?(Fixnum) or value.is_a?(Bignum) or value.is_a?(Float) or value.is_a?(String) 74: 75: if value.is_a?(String) 76: if value =~ /^-?\d+(:?\.\d+|(:?\.\d+)?e\d+)$/ 77: return value.to_f 78: elsif value =~ /^0x[0-9a-f]+$/i 79: return value.to_i(16) 80: elsif value =~ /^0[0-7]+$/ 81: return value.to_i(8) 82: elsif value =~ /^-?\d+$/ 83: return value.to_i 84: else 85: return nil 86: end 87: end 88: # it is one of Fixnum,Bignum or Float 89: value 90: end