Method: RSAC::Number#initialize

Defined in:
lib/antisamy/csspool/rsac/sac/lexical_unit.rb

#initialize(value, unit = nil, type = nil) ⇒ Number

Returns a new instance of Number.



159
160
161
162
163
164
165
166
167
168
169
170
171
172
# File 'lib/antisamy/csspool/rsac/sac/lexical_unit.rb', line 159

def initialize(value, unit = nil, type = nil)
  if value.is_a?(String)
    value =~ /^(-?[0-9.]*)(.*)$/
    value = $1
    unit  ||= $2
  end
  type  ||= UNITS[self.dimension_unit_text]
  self.string_value = "#{value}#{unit}"
  self.float_value = value.to_f
  self.integer_value = value.to_i
  self.dimension_unit_text = unit.downcase
  self.lexical_unit_type = UNITS[self.dimension_unit_text] ||
  (value =~ /\./ ? :SAC_NUMBER : :SAC_INTEGER)
end