Sha256: 57c893825f133356725b91748d9ac562b2c8565263f2969d5213efa237443271
Contents?: true
Size: 1.62 KB
Versions: 1
Compression:
Stored size: 1.62 KB
Contents
require 'time' require 'bigdecimal' module EDN module CoreExt module Unquoted def to_edn self.to_s end end module Bignum def to_edn self.to_s + 'M' end end module BigDecimal def to_edn self.to_s('F') + 'M' end end module String def to_edn self.inspect end end module Symbol def to_edn ":#{self.to_s}" end end module Array def to_edn '[' + self.map(&:to_edn).join(" ") + ']' end end module Hash def to_edn '{' + self.map { |k, v| [k, v].map(&:to_edn).join(" ") }.join(", ") + '}' end end module Set def to_edn '#{' + self.to_a.map(&:to_edn).join(" ") + '}' end end module NilClass def to_edn "nil" end end module DateTime def to_edn EDN.tagout("inst", self.rfc3339) end end module Time def to_edn EDN.tagout("inst", self.xmlschema) end end end end Numeric.send(:include, EDN::CoreExt::Unquoted) Bignum.send(:include, EDN::CoreExt::Bignum) BigDecimal.send(:include, EDN::CoreExt::BigDecimal) TrueClass.send(:include, EDN::CoreExt::Unquoted) FalseClass.send(:include, EDN::CoreExt::Unquoted) NilClass.send(:include, EDN::CoreExt::NilClass) String.send(:include, EDN::CoreExt::String) Symbol.send(:include, EDN::CoreExt::Symbol) Array.send(:include, EDN::CoreExt::Array) Hash.send(:include, EDN::CoreExt::Hash) Set.send(:include, EDN::CoreExt::Set) DateTime.send(:include, EDN::CoreExt::DateTime) Time.send(:include, EDN::CoreExt::Time)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
edn-0.9.1 | lib/edn/core_ext.rb |