Class: Polars::Decimal

Inherits:
NumericType show all
Defined in:
lib/polars/data_types.rb

Overview

Decimal 128-bit type with an optional precision and non-negative scale.

NOTE: this is an experimental work-in-progress feature and may not work as expected.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(precision, scale) ⇒ Decimal

Returns a new instance of Decimal.



200
201
202
203
# File 'lib/polars/data_types.rb', line 200

def initialize(precision, scale)
  @precision = precision
  @scale = scale
end

Instance Attribute Details

#precisionObject (readonly)

Returns the value of attribute precision.



198
199
200
# File 'lib/polars/data_types.rb', line 198

def precision
  @precision
end

#scaleObject (readonly)

Returns the value of attribute scale.



198
199
200
# File 'lib/polars/data_types.rb', line 198

def scale
  @scale
end

Instance Method Details

#==(other) ⇒ Object



205
206
207
208
209
210
211
212
213
# File 'lib/polars/data_types.rb', line 205

def ==(other)
  if other.eql?(Decimal)
    true
  elsif other.is_a?(Decimal)
    precision == other.precision && scale == other.scale
  else
    false
  end
end

#to_sObject



215
216
217
# File 'lib/polars/data_types.rb', line 215

def to_s
  "#{self.class.name}(precision: #{precision.inspect}, scale: #{scale.inspect})"
end