Module: Flt::Support

Included in:
Num
Defined in:
lib/flt/support.rb

Defined Under Namespace

Modules: AuxiliarFunctions Classes: FlagValues, Flags, Formatter, InfiniteLoopError, Reader

Class Method Summary collapse

Class Method Details

.Flags(*params) ⇒ Object

Constructor for Flags



334
335
336
337
338
339
340
# File 'lib/flt/support.rb', line 334

def Flags(*params)
  if params.size==1 && params.first.kind_of?(Flags)
    params.first
  else
    Flags.new(*params)
  end
end

.FlagValues(*params) ⇒ Object

Constructor for FlagValues



325
326
327
328
329
330
331
# File 'lib/flt/support.rb', line 325

def FlagValues(*params)
  if params.size==1 && params.first.kind_of?(FlagValues)
    params.first
  else
    FlagValues.new(*params)
  end
end

.simplified_round_mode(round_mode, negative) ⇒ Object

replace :ceiling and :floor rounding modes by :up/:down (depending on sign of the number to be rounded)



344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
# File 'lib/flt/support.rb', line 344

def simplified_round_mode(round_mode, negative)
  if negative
    if round_mode == :ceiling
      round_mode = :floor
    elsif round_mode == :floor
      round_mode = :ceiling
    end
  end
  if round_mode == :ceiling
    round_mode = :up
  elsif round_mode == :floor
    round_mode = :down
  end
  round_mode
end