json-stream 0.1.0
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.
- data/LICENSE +19 -0
- data/README +82 -0
- data/Rakefile +38 -0
- data/lib/json/stream.rb +15 -0
- data/lib/json/stream/buffer.rb +63 -0
- data/lib/json/stream/builder.rb +92 -0
- data/lib/json/stream/parser.rb +430 -0
- data/test/buffer_test.rb +87 -0
- data/test/builder_test.rb +123 -0
- data/test/parser_test.rb +451 -0
- metadata +84 -0
metadata
ADDED
@@ -0,0 +1,84 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: json-stream
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
version: 0.1.0
|
10
|
+
platform: ruby
|
11
|
+
authors:
|
12
|
+
- David Graham
|
13
|
+
autorequire:
|
14
|
+
bindir: bin
|
15
|
+
cert_chain: []
|
16
|
+
|
17
|
+
date: 2010-08-03 00:00:00 -06:00
|
18
|
+
default_executable:
|
19
|
+
dependencies: []
|
20
|
+
|
21
|
+
description: |-
|
22
|
+
A finite state machine based JSON parser that generates events
|
23
|
+
for each state change. This allows us to stream both the JSON document into
|
24
|
+
memory and the parsed object graph out of memory to some other process. This
|
25
|
+
is much like an XML SAX parser that generates events during parsing. There is
|
26
|
+
no requirement for the document nor the object graph to be fully buffered in
|
27
|
+
memory. This is best suited for huge JSON documents that won't fit in memory.
|
28
|
+
For example, streaming and processing large map/reduce views from Apache CouchDB.
|
29
|
+
email: david.malcom.graham@gmail.com
|
30
|
+
executables: []
|
31
|
+
|
32
|
+
extensions: []
|
33
|
+
|
34
|
+
extra_rdoc_files: []
|
35
|
+
|
36
|
+
files:
|
37
|
+
- LICENSE
|
38
|
+
- README
|
39
|
+
- Rakefile
|
40
|
+
- lib/json/stream/buffer.rb
|
41
|
+
- lib/json/stream/builder.rb
|
42
|
+
- lib/json/stream/parser.rb
|
43
|
+
- lib/json/stream.rb
|
44
|
+
- test/buffer_test.rb
|
45
|
+
- test/builder_test.rb
|
46
|
+
- test/parser_test.rb
|
47
|
+
has_rdoc: true
|
48
|
+
homepage: http://github.com/dgraham/json-stream
|
49
|
+
licenses: []
|
50
|
+
|
51
|
+
post_install_message:
|
52
|
+
rdoc_options: []
|
53
|
+
|
54
|
+
require_paths:
|
55
|
+
- lib
|
56
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
segments:
|
62
|
+
- 1
|
63
|
+
- 9
|
64
|
+
- 1
|
65
|
+
version: 1.9.1
|
66
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
67
|
+
none: false
|
68
|
+
requirements:
|
69
|
+
- - ">="
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
segments:
|
72
|
+
- 0
|
73
|
+
version: "0"
|
74
|
+
requirements: []
|
75
|
+
|
76
|
+
rubyforge_project:
|
77
|
+
rubygems_version: 1.3.7
|
78
|
+
signing_key:
|
79
|
+
specification_version: 3
|
80
|
+
summary: A streaming JSON parser that generates SAX-like events.
|
81
|
+
test_files:
|
82
|
+
- test/buffer_test.rb
|
83
|
+
- test/builder_test.rb
|
84
|
+
- test/parser_test.rb
|