class Jekyll::JekyllRdf::Types::XsdDouble
Public Class Methods
===(other)
click to toggle source
# File lib/jekyll/types/XsdDouble.rb, line 33 def self.=== other return other.to_s.eql? @@class_uri end
match?(string)
click to toggle source
# File lib/jekyll/types/XsdDouble.rb, line 7 def self.match? string return regex.match string.upcase end
regex()
click to toggle source
# File lib/jekyll/types/XsdDouble.rb, line 11 def self.regex @@regex ||= /^[+-]?[0-9]+\.(\d+)E[+-]?(\d+)$/ return @@regex end
to_s()
click to toggle source
# File lib/jekyll/types/XsdDouble.rb, line 37 def self.to_s return @@class_uri end
to_type(string)
click to toggle source
# File lib/jekyll/types/XsdDouble.rb, line 16 def self.to_type string string = string.upcase number = string.to_f negative = number < 0 if negative number = number * (-1) end e = [-1 * (Math.log10(number).floor - (string.to_s.index('E') - string.to_s.index('.'))), 0].max vz = "" if negative vz = "-" end result = vz.to_s + sprintf("%." + e.to_s + "f", number) return result end