diff options
-rw-r--r-- | ext/json/lib/json/common.rb | 18 | ||||
-rwxr-xr-x | test/json/json_generator_test.rb | 19 |
2 files changed, 4 insertions, 33 deletions
diff --git a/ext/json/lib/json/common.rb b/ext/json/lib/json/common.rb index b2f11afe55..c9f6d7505b 100644 --- a/ext/json/lib/json/common.rb +++ b/ext/json/lib/json/common.rb @@ -74,16 +74,6 @@ module JSON $VERBOSE = old end - def create_fast_state - State.new( - :indent => '', - :space => '', - :object_nl => "", - :array_nl => "", - :max_nesting => false - ) - end - def create_pretty_state State.new( :indent => ' ', @@ -368,12 +358,12 @@ module JSON # # Raises SystemStackError (stack level too deep): # JSON.fast_generate(a) def fast_generate(obj, opts = nil) - if State === opts - state = opts + if RUBY_VERSION >= "3.0" + warn "JSON.fast_generate is deprecated and will be removed in json 3.0.0, just use JSON.generate", uplevel: 1, category: :deprecated else - state = JSON.create_fast_state.configure(opts) + warn "JSON.fast_generate is deprecated and will be removed in json 3.0.0, just use JSON.generate", uplevel: 1 end - state.generate(obj) + generate(obj, opts) end # :call-seq: diff --git a/test/json/json_generator_test.rb b/test/json/json_generator_test.rb index f0dec452f3..64636c12c2 100755 --- a/test/json/json_generator_test.rb +++ b/test/json/json_generator_test.rb @@ -237,25 +237,6 @@ class JSONGeneratorTest < Test::Unit::TestCase }.sort_by { |n,| n.to_s }, state.to_h.sort_by { |n,| n.to_s }) end - def test_fast_state - state = JSON.create_fast_state - assert_equal({ - :allow_nan => false, - :array_nl => "", - :as_json => false, - :ascii_only => false, - :buffer_initial_length => 1024, - :depth => 0, - :script_safe => false, - :strict => false, - :indent => "", - :max_nesting => 0, - :object_nl => "", - :space => "", - :space_before => "", - }.sort_by { |n,| n.to_s }, state.to_h.sort_by { |n,| n.to_s }) - end - def test_allow_nan error = assert_raise(GeneratorError) { generate([JSON::NaN]) } assert_same JSON::NaN, error.invalid_object |