json 2.3.0 → 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +71 -5
  3. data/README.md +19 -3
  4. data/VERSION +1 -1
  5. data/ext/json/ext/generator/generator.c +132 -23
  6. data/ext/json/ext/generator/generator.h +5 -2
  7. data/ext/json/ext/parser/extconf.rb +26 -0
  8. data/ext/json/ext/parser/parser.c +2979 -1768
  9. data/ext/json/ext/parser/parser.h +6 -1
  10. data/ext/json/ext/parser/parser.rl +128 -38
  11. data/ext/json/extconf.rb +1 -0
  12. data/json.gemspec +0 -0
  13. data/lib/json/add/complex.rb +0 -1
  14. data/lib/json/add/rational.rb +0 -1
  15. data/lib/json/common.rb +370 -123
  16. data/lib/json/pure/generator.rb +29 -9
  17. data/lib/json/pure/parser.rb +23 -5
  18. data/lib/json/version.rb +1 -1
  19. data/lib/json.rb +549 -29
  20. metadata +17 -109
  21. data/.gitignore +0 -18
  22. data/.travis.yml +0 -24
  23. data/Gemfile +0 -14
  24. data/README-json-jruby.md +0 -33
  25. data/Rakefile +0 -413
  26. data/diagrams/.keep +0 -0
  27. data/install.rb +0 -23
  28. data/java/src/json/ext/ByteListTranscoder.java +0 -166
  29. data/java/src/json/ext/Generator.java +0 -466
  30. data/java/src/json/ext/GeneratorMethods.java +0 -231
  31. data/java/src/json/ext/GeneratorService.java +0 -42
  32. data/java/src/json/ext/GeneratorState.java +0 -490
  33. data/java/src/json/ext/OptionsReader.java +0 -113
  34. data/java/src/json/ext/Parser.java +0 -2362
  35. data/java/src/json/ext/Parser.rl +0 -893
  36. data/java/src/json/ext/ParserService.java +0 -34
  37. data/java/src/json/ext/RuntimeInfo.java +0 -116
  38. data/java/src/json/ext/StringDecoder.java +0 -166
  39. data/java/src/json/ext/StringEncoder.java +0 -111
  40. data/java/src/json/ext/Utils.java +0 -88
  41. data/json-java.gemspec +0 -37
  42. data/json_pure.gemspec +0 -38
  43. data/lib/json/ext/.keep +0 -0
  44. data/references/rfc7159.txt +0 -899
  45. data/tests/fixtures/fail10.json +0 -1
  46. data/tests/fixtures/fail11.json +0 -1
  47. data/tests/fixtures/fail12.json +0 -1
  48. data/tests/fixtures/fail13.json +0 -1
  49. data/tests/fixtures/fail14.json +0 -1
  50. data/tests/fixtures/fail18.json +0 -1
  51. data/tests/fixtures/fail19.json +0 -1
  52. data/tests/fixtures/fail2.json +0 -1
  53. data/tests/fixtures/fail20.json +0 -1
  54. data/tests/fixtures/fail21.json +0 -1
  55. data/tests/fixtures/fail22.json +0 -1
  56. data/tests/fixtures/fail23.json +0 -1
  57. data/tests/fixtures/fail24.json +0 -1
  58. data/tests/fixtures/fail25.json +0 -1
  59. data/tests/fixtures/fail27.json +0 -2
  60. data/tests/fixtures/fail28.json +0 -2
  61. data/tests/fixtures/fail3.json +0 -1
  62. data/tests/fixtures/fail4.json +0 -1
  63. data/tests/fixtures/fail5.json +0 -1
  64. data/tests/fixtures/fail6.json +0 -1
  65. data/tests/fixtures/fail7.json +0 -1
  66. data/tests/fixtures/fail8.json +0 -1
  67. data/tests/fixtures/fail9.json +0 -1
  68. data/tests/fixtures/obsolete_fail1.json +0 -1
  69. data/tests/fixtures/pass1.json +0 -56
  70. data/tests/fixtures/pass15.json +0 -1
  71. data/tests/fixtures/pass16.json +0 -1
  72. data/tests/fixtures/pass17.json +0 -1
  73. data/tests/fixtures/pass2.json +0 -1
  74. data/tests/fixtures/pass26.json +0 -1
  75. data/tests/fixtures/pass3.json +0 -6
  76. data/tests/json_addition_test.rb +0 -203
  77. data/tests/json_common_interface_test.rb +0 -126
  78. data/tests/json_encoding_test.rb +0 -107
  79. data/tests/json_ext_parser_test.rb +0 -15
  80. data/tests/json_fixtures_test.rb +0 -32
  81. data/tests/json_generator_test.rb +0 -421
  82. data/tests/json_generic_object_test.rb +0 -82
  83. data/tests/json_parser_test.rb +0 -472
  84. data/tests/json_string_matching_test.rb +0 -38
  85. data/tests/test_helper.rb +0 -17
  86. data/tools/diff.sh +0 -18
  87. data/tools/fuzz.rb +0 -131
  88. data/tools/server.rb +0 -62
data/tools/server.rb DELETED
@@ -1,62 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # encoding: utf-8
3
-
4
- require 'webrick'
5
- include WEBrick
6
- $:.unshift 'ext'
7
- $:.unshift 'lib'
8
- require 'json'
9
-
10
- class JSONServlet < HTTPServlet::AbstractServlet
11
- @@count = 1
12
-
13
- def do_GET(req, res)
14
- obj = {
15
- "TIME" => Time.now.strftime("%FT%T"),
16
- "foo" => "Bär",
17
- "bar" => "© ≠ €!",
18
- 'a' => 2,
19
- 'b' => 3.141,
20
- 'COUNT' => @@count += 1,
21
- 'c' => 'c',
22
- 'd' => [ 1, "b", 3.14 ],
23
- 'e' => { 'foo' => 'bar' },
24
- 'g' => "松本行弘",
25
- 'h' => 1000.0,
26
- 'i' => 0.001,
27
- 'j' => "\xf0\xa0\x80\x81",
28
- }
29
- res.body = JSON.generate obj
30
- res['Content-Type'] = "application/json"
31
- end
32
- end
33
-
34
- def create_server(err, dir, port)
35
- dir = File.expand_path(dir)
36
- err.puts "Surf to:", "http://#{Socket.gethostname}:#{port}"
37
-
38
- s = HTTPServer.new(
39
- :Port => port,
40
- :DocumentRoot => dir,
41
- :Logger => WEBrick::Log.new(err),
42
- :AccessLog => [
43
- [ err, WEBrick::AccessLog::COMMON_LOG_FORMAT ],
44
- [ err, WEBrick::AccessLog::REFERER_LOG_FORMAT ],
45
- [ err, WEBrick::AccessLog::AGENT_LOG_FORMAT ]
46
- ]
47
- )
48
- s.mount("/json", JSONServlet)
49
- s
50
- end
51
-
52
- default_dir = File.expand_path(File.join(File.dirname(__FILE__), '..', 'data'))
53
- dir = ARGV.shift || default_dir
54
- port = (ARGV.shift || 6666).to_i
55
- s = create_server(STDERR, dir, 6666)
56
- t = Thread.new { s.start }
57
- trap(:INT) do
58
- s.shutdown
59
- t.join
60
- exit
61
- end
62
- sleep