Module: JSON::Pure::Generator::GeneratorMethods::Float

Defined in:
lib/json/pure/generator.rb

Instance Method Summary collapse

Instance Method Details

#to_json(state = nil) ⇒ Object

Returns a JSON string representation for this Float number.



368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
# File 'lib/json/pure/generator.rb', line 368

def to_json(state = nil, *)
  state = State.from_state(state)
  case
  when infinite?
    if state.allow_nan?
      to_s
    else
      raise GeneratorError, "#{self} not allowed in JSON"
    end
  when nan?
    if state.allow_nan?
      to_s
    else
      raise GeneratorError, "#{self} not allowed in JSON"
    end
  else
    to_s
  end
end