Sha256: 4a0ed9a98f0a8a5aa06d16aa453e08ef4a44e712f93c09482c62f63a7e2ff941
Contents?: true
Size: 1.03 KB
Versions: 3
Compression:
Stored size: 1.03 KB
Contents
module ActiveSupport module JSON class CircularReferenceError < StandardError end # Converts a Ruby object into a JSON string. def self.encode(value, options = {}) seen = (options[:seen] ||= []) raise CircularReferenceError, 'object references itself' if seen.include?(value) seen << value value.send(:to_json, options) ensure seen.pop end end end require 'active_support/json/variable' require 'active_support/json/encoders/date' require 'active_support/json/encoders/date_time' require 'active_support/json/encoders/enumerable' require 'active_support/json/encoders/false_class' require 'active_support/json/encoders/hash' require 'active_support/json/encoders/nil_class' require 'active_support/json/encoders/numeric' require 'active_support/json/encoders/object' require 'active_support/json/encoders/regexp' require 'active_support/json/encoders/string' require 'active_support/json/encoders/symbol' require 'active_support/json/encoders/time' require 'active_support/json/encoders/true_class'
Version data entries
3 entries across 3 versions & 3 rubygems