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.



226
227
228
229
# File 'lib/polars/data_types.rb', line 226

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

Instance Attribute Details

#precisionObject (readonly)

Returns the value of attribute precision.



224
225
226
# File 'lib/polars/data_types.rb', line 224

def precision
  @precision
end

#scaleObject (readonly)

Returns the value of attribute scale.



224
225
226
# File 'lib/polars/data_types.rb', line 224

def scale
  @scale
end

Instance Method Details

#==(other) ⇒ Object



231
232
233
234
235
236
237
238
239
# File 'lib/polars/data_types.rb', line 231

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

#to_sObject



241
242
243
# File 'lib/polars/data_types.rb', line 241

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