edn_turbo 0.3.1 → 0.3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +9 -4
- data/bin/ppedn +3 -1
- data/ext/edn_turbo/edn_parser.cc +1337 -946
- data/ext/edn_turbo/edn_parser.h +27 -13
- data/ext/edn_turbo/edn_parser.rl +207 -145
- data/ext/edn_turbo/edn_parser_util.cc +56 -47
- data/ext/edn_turbo/main.cc +20 -17
- data/lib/edn_turbo/constants.rb +14 -0
- data/lib/edn_turbo/edn_parser.rb +5 -2
- data/lib/edn_turbo/tags.rb +46 -0
- data/lib/edn_turbo/utils.rb +34 -0
- data/lib/edn_turbo/version.rb +2 -2
- data/lib/edn_turbo.rb +10 -92
- data/test/test_output_diff.rb +56 -26
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 40150e3db9c9690a44858cbbaeb1354cf455fae0
|
4
|
+
data.tar.gz: cbd2dcb30ea31f014a50f390e988c1a0b499f7f0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e00749730b5ac6e6ed30ac7875c0cb2420011fbd0a6a0aeb3e2fa816ab165ae2b6327dc0c532ebe6c907548737728aae54e22317450338228b99c2996c0e038d
|
7
|
+
data.tar.gz: 76eb4c11b06efd7c36055402f2317cc7d8ce0f8c5e14217bf759b2a1cfe60511d22ee04e97bd8ecad5969638885e11bf5cecf526f74e736a794f69eef1cfecab
|
data/README.md
CHANGED
@@ -63,6 +63,11 @@ Simlar to `edn-ruby`:
|
|
63
63
|
# also accepts a string
|
64
64
|
pp EDNT.read("[ 1 2 3 abc ]")
|
65
65
|
|
66
|
+
# metadata
|
67
|
+
e = EDNT.read('^String ^:foo ^{:foo false :tag Boolean :bar 2} [1 2]')
|
68
|
+
pp e # -> [1, 2]
|
69
|
+
pp e.metadata # -> {:foo=>true, :tag=>#<EDN::Type::Symbol:0x007fdbea8a29b0 @symbol=:String>, :bar=>2}
|
70
|
+
|
66
71
|
```
|
67
72
|
|
68
73
|
Or instantiate and reuse an instance of a parser:
|
@@ -96,8 +101,8 @@ Or instantiate and reuse an instance of a parser:
|
|
96
101
|
|
97
102
|
Known problems
|
98
103
|
==============
|
99
|
-
v0.3.
|
104
|
+
v0.3.1:
|
100
105
|
|
101
|
-
-
|
102
|
-
|
103
|
-
|
106
|
+
- Some unhandled corner cases with operators and spacing
|
107
|
+
remain. `edn_turbo` handles things like `1 / 12` and `1/ 12` but
|
108
|
+
parse errors occur with `1/12` and `1 /12`.
|