Methods
Constants
DECODERS = %w(Yajl Yaml)
 

Listed in order of preference.

DATE_REGEX = /^(?:\d{4}-\d{2}-\d{2}|\d{4}-\d{1,2}-\d{1,2}[T \t]+\d{1,2}:\d{2}:\d{2}(\.[0-9]*)?(([ \t]*)Z|[-+]\d{2}?(:\d{2})?))$/
 

matches YAML-formatted dates

CircularReferenceError = Deprecation::DeprecatedConstantProxy.new('ActiveSupport::JSON::CircularReferenceError', Encoding::CircularReferenceError)
Attributes
[R] parse_error
Public Class methods
backend()
  # File activesupport/lib/active_support/json/decoding.rb, line 16
def backend
  set_default_backend unless defined?(@backend)
  @backend
end
backend=(name)
  # File activesupport/lib/active_support/json/decoding.rb, line 21
def backend=(name)
  if name.is_a?(Module)
    @backend = name
  else
    require "active_support/json/backends/#{name.to_s.downcase}"
    @backend = ActiveSupport::JSON::Backends::const_get(name)
  end
  @parse_error = @backend::ParseError
end
encode(value, options = nil)

Dumps object in JSON (JavaScript Object Notation). See www.json.org for more info.

  # File activesupport/lib/active_support/json/encoding.rb, line 29
def self.encode(value, options = nil)
  Encoding::Encoder.new(options).encode(value)
end
set_default_backend()
  # File activesupport/lib/active_support/json/decoding.rb, line 38
def set_default_backend
  DECODERS.find do |name|
    begin
      self.backend = name
      true
    rescue LoadError
      # Try next decoder.
      false
    end
  end
end
with_backend(name)
  # File activesupport/lib/active_support/json/decoding.rb, line 31
def with_backend(name)
  old_backend, self.backend = backend, name
  yield
ensure
  self.backend = old_backend
end