# File lib/puppet/external/pson/pure/generator.rb, line 351
351:           def to_pson(state = nil, *)
352:             case
353:             when infinite?
354:               if !state || state.allow_nan?
355:                 to_s
356:               else
357:                 raise GeneratorError, "#{self} not allowed in PSON"
358:               end
359:             when nan?
360:               if !state || state.allow_nan?
361:                 to_s
362:               else
363:                 raise GeneratorError, "#{self} not allowed in PSON"
364:               end
365:             else
366:               to_s
367:             end
368:           end