yeptris 0.6.9.2-x86_64-linux → 0.6.10.1-x86_64-linux
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.
- checksums.yaml +4 -4
- data/lib/yeptris.rb +1 -1
- data/libyeptris.so +0 -0
- data/vendor/libyeptris/CMakeLists.txt +1 -1
- data/vendor/libyeptris/src/yeptris/dom/dom.c +11 -2
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8bc277cda81fa3cd9f78f8da2e05b1b766be21cdbb6d139f3012fef124e63a3f
|
|
4
|
+
data.tar.gz: 38d2ba046121fa48c6b5085e4702224797b7630cbc53dd44badeefc478643938
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cfa550e13faa236593c224d9435be2216fe95bfba100f47e12e64a3e2287b73552a75b385554d1b6b91b12069c25e1cd04aa4bf0224a9b143c95c938b3115d7b
|
|
7
|
+
data.tar.gz: 22674ed22f656535b33b5b69b75c005f7bd0d6e5e95c2d5ace80b51e5c72896f4f6f8539794b3f9a72f0d05a08ac8db29833909b47007b0fa8ad11f89a4f95f8
|
data/lib/yeptris.rb
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
module Yeptris
|
|
4
4
|
# The gem's version lives in the parent namespace's file — the last
|
|
5
5
|
# internal require (yeptris/version) retired with it.
|
|
6
|
-
VERSION = "0.6.
|
|
6
|
+
VERSION = "0.6.10.1".freeze
|
|
7
7
|
# The error hierarchy lives in THIS file (the parent namespace's
|
|
8
8
|
# own file): nested constants do not trigger a parent-constant
|
|
9
9
|
# autoload, and the law forbids internal requires — defining the
|
data/libyeptris.so
CHANGED
|
Binary file
|
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
|
|
9
9
|
#include "dom.h"
|
|
10
10
|
|
|
11
|
+
#include <yeptris/resolve.h> /* the tag-id SSOT (the strict literal arm) */
|
|
12
|
+
|
|
11
13
|
/* The bounded-parse caps: each node consumes at least one input byte
|
|
12
14
|
* (the grammar guarantees it), so len + 1024 is airtight for valid
|
|
13
15
|
* documents; docs and anchors are sparser still. The arena copies
|
|
@@ -801,8 +803,15 @@ int dom_on_flow_build(void* ctx, const char* p, size_t open, size_t len, uint32_
|
|
|
801
803
|
}
|
|
802
804
|
yep_view v = {p + t.at, (uint32_t)(t.end - t.at)};
|
|
803
805
|
d->nodes[sid].value = dom_str_in(d, &v, 1);
|
|
804
|
-
|
|
805
|
-
|
|
806
|
+
if (t.cls == '#') {
|
|
807
|
+
d->nodes[sid].tag_id = yep_resolve_number(r, t.is_float);
|
|
808
|
+
} else if (d->flow_strict) {
|
|
809
|
+
/* strict JSON: the walker validated the span is exactly
|
|
810
|
+
* one of the three RFC 8259 words — no resolver dispatch */
|
|
811
|
+
d->nodes[sid].tag_id = (v.p[0] == 'n') ? YEPTRIS_TAG_NULL : YEPTRIS_TAG_BOOL;
|
|
812
|
+
} else {
|
|
813
|
+
d->nodes[sid].tag_id = r->resolve(NULL, v.p, v.len);
|
|
814
|
+
}
|
|
806
815
|
if (dom_place(d, sid) != 0) {
|
|
807
816
|
goto fail;
|
|
808
817
|
}
|