zkjson 0.1.19 → 0.1.20
Sign up to get free protection for your applications and to get access to all the features.
- package/package.json +1 -1
- package/uint.js +113 -1
package/package.json
CHANGED
package/uint.js
CHANGED
@@ -26,6 +26,63 @@ const toArray = (json, size) => {
|
|
26
26
|
return j
|
27
27
|
}
|
28
28
|
|
29
|
+
|
30
|
+
const arrPush = (json, size, digit, index, val) => {
|
31
|
+
var len = get(json, size, 0)
|
32
|
+
var _sum = sum(json, size, digit, 1, index + 2)
|
33
|
+
var at = _sum + 1 + len
|
34
|
+
json = insert(json, size, digit, at, val)
|
35
|
+
var alen = get(json, size, index + 1)
|
36
|
+
json = replace(json, size, digit, index + 1, alen + 1)
|
37
|
+
return json
|
38
|
+
}
|
39
|
+
|
40
|
+
const arrGet = (json, size, digit, index, index2) => {
|
41
|
+
var len = get(json, size, 0)
|
42
|
+
var _sum = sum(json, size, digit, 1, index + 1)
|
43
|
+
var at = _sum + 1 + len + index2
|
44
|
+
return get(json, size, at)
|
45
|
+
}
|
46
|
+
|
47
|
+
const pushArray = (json, size, digit, _arr, asize) => {
|
48
|
+
var jlen = length(json,size)
|
49
|
+
var alen = 0
|
50
|
+
if(jlen == 0) {
|
51
|
+
json = push(json, size, digit, 1)
|
52
|
+
}else{
|
53
|
+
alen = get(json, size, 0)
|
54
|
+
json = replace(json, size, digit, 0, alen + 1)
|
55
|
+
}
|
56
|
+
var len = length(_arr,size)
|
57
|
+
json = insert(json, size, digit, alen + 1, len)
|
58
|
+
var c = [0, asize, 0, 0, 0, 0, 0, 0, 0]
|
59
|
+
while (c[5] == 0) {
|
60
|
+
c = next(_arr, c)
|
61
|
+
json = push(json, size, digit, c[0])
|
62
|
+
}
|
63
|
+
return json
|
64
|
+
}
|
65
|
+
|
66
|
+
const popArray = (json, size, digit) => {
|
67
|
+
var jlen = length(json,size)
|
68
|
+
var alen = 0
|
69
|
+
if(jlen == 0) {
|
70
|
+
throw Error()
|
71
|
+
}else{
|
72
|
+
alen = get(json, size, 0)
|
73
|
+
}
|
74
|
+
if(alen == 1) return []
|
75
|
+
var len = get(json, size, alen)
|
76
|
+
json = replace(json, size, digit, 0, alen - 1)
|
77
|
+
var _sum = sum(json, size, digit, 1, alen)
|
78
|
+
var start = alen + 1 +_sum
|
79
|
+
var end = start + len + 1
|
80
|
+
json = remove(json, size, digit, start, end)
|
81
|
+
json = remove(json, size, digit, alen, alen + 1)
|
82
|
+
return json
|
83
|
+
}
|
84
|
+
|
85
|
+
|
29
86
|
const length = (json, size) => {
|
30
87
|
var _len = 0
|
31
88
|
var c = [0, size, 0, 0, 0, 0, 0, 0, 0]
|
@@ -42,6 +99,42 @@ const length = (json, size) => {
|
|
42
99
|
}
|
43
100
|
}
|
44
101
|
|
102
|
+
const sum = (json, size, digit, start, end) =>{
|
103
|
+
var c = [0, size, 0, 0, 0, 0, 0, 0, 0]
|
104
|
+
var _sum = 0
|
105
|
+
var i = 0
|
106
|
+
while (c[5] == 0) {
|
107
|
+
c = next(json, c)
|
108
|
+
if (i >= start && i < end) _sum += c[0]
|
109
|
+
i++
|
110
|
+
}
|
111
|
+
return _sum
|
112
|
+
}
|
113
|
+
|
114
|
+
const mul = (json, size, digit, start, end) =>{
|
115
|
+
var c = [0, size, 0, 0, 0, 0, 0, 0, 0]
|
116
|
+
var _mul = 0
|
117
|
+
var i = 0
|
118
|
+
while (c[5] == 0) {
|
119
|
+
c = next(json, c)
|
120
|
+
if (i >= start && i < end) _mul *= c[0]
|
121
|
+
i++
|
122
|
+
}
|
123
|
+
return _mul
|
124
|
+
}
|
125
|
+
|
126
|
+
const remove = (json, size, digit, start, end) =>{
|
127
|
+
var _arr = arr(size)
|
128
|
+
var c = [0, size, 0, 0, 0, 0, 0, 0, 0]
|
129
|
+
var i = 0
|
130
|
+
while (c[5] == 0) {
|
131
|
+
c = next(json, c)
|
132
|
+
if (i < start || i >= end) push(_arr, size, digit, c[0])
|
133
|
+
i++
|
134
|
+
}
|
135
|
+
return _arr
|
136
|
+
}
|
137
|
+
|
45
138
|
const slice = (json, size, digit, start, end) =>{
|
46
139
|
var _arr = arr(size)
|
47
140
|
var c = [0, size, 0, 0, 0, 0, 0, 0, 0]
|
@@ -421,5 +514,24 @@ const next = (json, c) => {
|
|
421
514
|
}
|
422
515
|
|
423
516
|
module.exports = {
|
424
|
-
next,
|
517
|
+
next,
|
518
|
+
arr,
|
519
|
+
push,
|
520
|
+
length,
|
521
|
+
last,
|
522
|
+
pop,
|
523
|
+
toArray,
|
524
|
+
shift,
|
525
|
+
unshift,
|
526
|
+
slice,
|
527
|
+
insert,
|
528
|
+
replace,
|
529
|
+
get,
|
530
|
+
pushArray,
|
531
|
+
arrPush,
|
532
|
+
sum,
|
533
|
+
mul,
|
534
|
+
arrGet,
|
535
|
+
remove,
|
536
|
+
popArray
|
425
537
|
}
|