| line |
true |
false |
branch |
|
79
|
1 |
8 |
if (is_utf8) SvUTF8_on(sv); |
|
775
|
1 |
20 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
0 |
21 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
777
|
0 |
21 |
if (!map) croak("Failed to create HashMap::I32"); |
|
785
|
21 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
21 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
21 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
21 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
792
|
150225 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
150225 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
150225 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
150225 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
800
|
50010 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
50010 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
802
|
5 |
50005 |
if (!hashmap_i32_get(self, key, &value)) XSRETURN_UNDEF; |
|
810
|
150004 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
150004 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
150004 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
150004 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
818
|
3 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
826
|
9 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
828
|
2 |
7 |
if (!hashmap_i32_increment(self, key, &val)) |
|
837
|
9 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
839
|
3 |
6 |
if (!hashmap_i32_decrement(self, key, &val)) |
|
848
|
9 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
850
|
2 |
7 |
if (!hashmap_i32_increment_by(self, key, delta, &val)) |
|
859
|
6 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
860
|
0 |
6 |
RETVAL = self->size; |
|
867
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
868
|
0 |
0 |
RETVAL = self->max_size; |
|
875
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
876
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
883
|
2 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
884
|
0 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
885
|
0 |
2 |
EXTEND(SP, self->size); |
|
887
|
32 |
2 |
for (i = 0; i < self->capacity; i++) { |
|
888
|
2 |
30 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
889
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
895
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
896
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
897
|
0 |
1 |
EXTEND(SP, self->size); |
|
899
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
900
|
2 |
14 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
901
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
907
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
908
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
909
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
911
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
912
|
2 |
14 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
913
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
914
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
921
|
14 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
14 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
14 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
14 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
922
|
0 |
14 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
923
|
67 |
4 |
while (self->iter_pos < self->capacity) { |
|
925
|
10 |
57 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
10 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
10 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
926
|
0 |
10 |
EXTEND(SP, 2); |
|
927
|
0 |
10 |
mXPUSHi(self->nodes[i].key); |
|
928
|
0 |
10 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
929
|
0 |
10 |
mXPUSHi(self->nodes[i].value); |
|
939
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
945
|
3 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
951
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
953
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
955
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
956
|
1 |
15 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
970
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
978
|
3 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32, stash_i32, "Data::HashMap::I32", self_sv); |
|
982
|
1 |
2 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
995
|
37 |
37 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
18 |
56 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
997
|
0 |
74 |
if (!map) croak("Failed to create HashMap::II"); |
|
1005
|
74 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
74 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
74 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
74 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1012
|
383157 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
383157 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
383157 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
383157 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1020
|
100164 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
100164 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
100164 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
100164 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1022
|
26 |
100138 |
if (!hashmap_ii_get(self, key, &value)) XSRETURN_UNDEF; |
|
1030
|
280022 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
280022 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
280022 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
280022 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1038
|
10 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
10 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
10 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
10 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1046
|
15014 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
15014 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
15014 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
15014 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1048
|
3 |
15011 |
if (!hashmap_ii_increment(self, key, &val)) |
|
1057
|
5006 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
5006 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5006 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5006 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1059
|
2 |
5004 |
if (!hashmap_ii_decrement(self, key, &val)) |
|
1068
|
8 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
8 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1070
|
2 |
6 |
if (!hashmap_ii_increment_by(self, key, delta, &val)) |
|
1079
|
33 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
33 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
33 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
33 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1080
|
0 |
33 |
RETVAL = self->size; |
|
1087
|
4 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1088
|
0 |
4 |
RETVAL = self->max_size; |
|
1095
|
5 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1096
|
0 |
5 |
RETVAL = (UV)self->default_ttl; |
|
1103
|
9 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1104
|
3 |
6 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1105
|
0 |
9 |
EXTEND(SP, self->size); |
|
1107
|
640 |
9 |
for (i = 0; i < self->capacity; i++) { |
|
1108
|
233 |
407 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
225 |
8 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
6 |
219 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
6 |
0 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
4 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
1109
|
0 |
221 |
mXPUSHi(self->nodes[i].key); |
|
1115
|
5 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1116
|
1 |
4 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1117
|
0 |
5 |
EXTEND(SP, self->size); |
|
1119
|
560 |
5 |
for (i = 0; i < self->capacity; i++) { |
|
1120
|
207 |
353 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
205 |
2 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
203 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
1121
|
0 |
203 |
mXPUSHi(self->nodes[i].value); |
|
1127
|
5 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1128
|
1 |
4 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1129
|
0 |
5 |
EXTEND(SP, self->size * 2); |
|
1131
|
560 |
5 |
for (i = 0; i < self->capacity; i++) { |
|
1132
|
207 |
353 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
205 |
2 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
203 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1133
|
0 |
203 |
mXPUSHi(self->nodes[i].key); |
|
1134
|
0 |
203 |
mXPUSHi(self->nodes[i].value); |
|
1141
|
31 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
31 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
31 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
31 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1142
|
6 |
25 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1143
|
174 |
6 |
while (self->iter_pos < self->capacity) { |
|
1145
|
46 |
128 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
44 |
2 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
24 |
20 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
24 |
0 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
5 |
19 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1146
|
0 |
25 |
EXTEND(SP, 2); |
|
1147
|
0 |
25 |
mXPUSHi(self->nodes[i].key); |
|
1148
|
1 |
24 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
1149
|
0 |
24 |
mXPUSHi(self->nodes[i].value); |
|
1159
|
1 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1165
|
8 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
8 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1171
|
4 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1173
|
2 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1175
|
64 |
4 |
for (i = 0; i < self->capacity; i++) { |
|
1176
|
6 |
58 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
6 |
0 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
4 |
2 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
3 |
1 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
3 |
if (II_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1190
|
108 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
108 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
108 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
108 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1198
|
15 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
15 |
0 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapII, stash_ii, "Data::HashMap::II", self_sv); |
|
1202
|
0 |
15 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
1215
|
4 |
29 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
1 |
32 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
1217
|
0 |
33 |
if (!map) croak("Failed to create HashMap::IS"); |
|
1225
|
33 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
33 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
33 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
33 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1232
|
81023 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
81023 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
81023 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
81023 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1233
|
0 |
81023 |
EXTRACT_STR_VAL(value); |
|
1241
|
50011 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
50011 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
50011 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
50011 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1245
|
3 |
50008 |
if (!hashmap_is_get(self, key, &val, &val_len, &val_utf8)) |
|
1248
|
1 |
50007 |
if (val_utf8) SvUTF8_on(RETVAL); |
|
1255
|
5 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1259
|
2 |
3 |
if (!hashmap_is_get(self, key, &val, &val_len, &val_utf8)) |
|
1268
|
80106 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
80106 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
80106 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
80106 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1276
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1284
|
5 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1285
|
0 |
5 |
RETVAL = self->size; |
|
1292
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1293
|
0 |
0 |
RETVAL = self->max_size; |
|
1300
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1301
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
1308
|
4 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1309
|
0 |
4 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1310
|
0 |
4 |
EXTEND(SP, self->size); |
|
1312
|
544 |
4 |
for (i = 0; i < self->capacity; i++) { |
|
1313
|
202 |
342 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
200 |
2 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
200 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
1314
|
0 |
200 |
mXPUSHi(self->nodes[i].key); |
|
1320
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1321
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1322
|
0 |
3 |
EXTEND(SP, self->size); |
|
1324
|
528 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
1325
|
202 |
326 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
200 |
2 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
200 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1326
|
200 |
0 |
if (self->nodes[i].value) { |
|
1329
|
0 |
200 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(sv); |
|
1330
|
0 |
200 |
mXPUSHs(sv); |
|
1332
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
1340
|
1 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1341
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1342
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
1344
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
1345
|
2 |
14 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1346
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
1347
|
2 |
0 |
if (self->nodes[i].value) { |
|
1350
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(sv); |
|
1351
|
0 |
2 |
mXPUSHs(sv); |
|
1353
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
1361
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1362
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1363
|
16 |
1 |
while (self->iter_pos < self->capacity) { |
|
1365
|
2 |
14 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1366
|
0 |
2 |
EXTEND(SP, 2); |
|
1367
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
1368
|
0 |
2 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
1369
|
2 |
0 |
if (self->nodes[i].value) { |
|
1372
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(vsv); |
|
1373
|
0 |
2 |
mXPUSHs(vsv); |
|
1375
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
1386
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1392
|
2 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1398
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1400
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1402
|
528 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
1403
|
201 |
327 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
199 |
2 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
199 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1408
|
199 |
0 |
: newSV(0); |
|
1409
|
199 |
0 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
|
0 |
199 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
1422
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1423
|
0 |
0 |
EXTRACT_STR_VAL(value); |
|
1431
|
9 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapIS, stash_is, "Data::HashMap::IS", self_sv); |
|
1432
|
0 |
9 |
EXTRACT_STR_VAL(default_sv); |
|
1436
|
0 |
9 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
1437
|
9 |
0 |
if (self->nodes[idx].value) { |
|
1439
|
0 |
9 |
if (HM_UNPACK_UTF8(self->nodes[idx].val_len)) SvUTF8_on(RETVAL); |
|
1454
|
2 |
23 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
1 |
24 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
1456
|
0 |
25 |
if (!map) croak("Failed to create HashMap::SI"); |
|
1464
|
25 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
25 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
25 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
25 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1471
|
80226 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
80226 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
80226 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
80226 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1472
|
0 |
80226 |
EXTRACT_STR_KEY(key_sv); |
|
1480
|
50016 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
50016 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
50016 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
50016 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1481
|
0 |
50016 |
EXTRACT_STR_KEY(key_sv); |
|
1483
|
3 |
50013 |
if (!hashmap_si_get(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &value)) |
|
1492
|
80006 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
80006 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
80006 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
80006 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1493
|
0 |
80006 |
EXTRACT_STR_KEY(key_sv); |
|
1501
|
2 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1502
|
0 |
2 |
EXTRACT_STR_KEY(key_sv); |
|
1510
|
15015 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
15015 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
15015 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
15015 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1511
|
0 |
15015 |
EXTRACT_STR_KEY(key_sv); |
|
1513
|
1 |
15014 |
if (!hashmap_si_increment(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val)) |
|
1522
|
5006 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
5006 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
5006 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
5006 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1523
|
0 |
5006 |
EXTRACT_STR_KEY(key_sv); |
|
1525
|
2 |
5004 |
if (!hashmap_si_decrement(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val)) |
|
1534
|
6 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1535
|
0 |
6 |
EXTRACT_STR_KEY(key_sv); |
|
1537
|
2 |
4 |
if (!hashmap_si_increment_by(self, _kstr, (uint32_t)_klen, _khash, _kutf8, delta, &val)) |
|
1546
|
5 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1547
|
0 |
5 |
RETVAL = self->size; |
|
1554
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1555
|
0 |
0 |
RETVAL = self->max_size; |
|
1562
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1563
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
1570
|
3 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1571
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1572
|
0 |
3 |
EXTEND(SP, self->size); |
|
1574
|
48 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
1575
|
8 |
40 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
7 |
1 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
7 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1578
|
1 |
6 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
1579
|
0 |
7 |
mXPUSHs(sv); |
|
1586
|
1 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1587
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1588
|
0 |
1 |
EXTEND(SP, self->size); |
|
1590
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
1591
|
2 |
14 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
1592
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
1598
|
2 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1599
|
0 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1600
|
0 |
2 |
EXTEND(SP, self->size * 2); |
|
1602
|
32 |
2 |
for (i = 0; i < self->capacity; i++) { |
|
1603
|
8 |
24 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
7 |
1 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
7 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1606
|
1 |
6 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
1607
|
0 |
7 |
mXPUSHs(sv); |
|
1608
|
0 |
7 |
mXPUSHi(self->nodes[i].value); |
|
1615
|
4 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1616
|
0 |
4 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1617
|
18 |
1 |
while (self->iter_pos < self->capacity) { |
|
1619
|
3 |
15 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
3 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
3 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1620
|
0 |
3 |
EXTEND(SP, 2); |
|
1624
|
0 |
3 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(ksv); |
|
1625
|
0 |
3 |
mXPUSHs(ksv); |
|
1627
|
1 |
2 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
1628
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
1638
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1644
|
2 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1650
|
1 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1652
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1654
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
1655
|
1 |
15 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1659
|
0 |
1 |
(void)hv_store(hv, self->nodes[i].key, kutf8 ? -(I32)klen : (I32)klen, val, 0); |
|
1669
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1670
|
0 |
0 |
EXTRACT_STR_KEY(key_sv); |
|
1678
|
8 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
8 |
0 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapSI, stash_si, "Data::HashMap::SI", self_sv); |
|
1679
|
0 |
8 |
EXTRACT_STR_KEY(key_sv); |
|
1683
|
0 |
8 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
1696
|
8 |
49 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
5 |
52 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
1698
|
0 |
57 |
if (!map) croak("Failed to create HashMap::SS"); |
|
1706
|
57 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
57 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
57 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
57 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1713
|
82317 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
82317 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
82317 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
82317 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1714
|
0 |
82317 |
EXTRACT_STR_KEY(key_sv); |
|
1715
|
0 |
82317 |
EXTRACT_STR_VAL(value); |
|
1724
|
50024 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
50024 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
50024 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
50024 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1725
|
0 |
50024 |
EXTRACT_STR_KEY(key_sv); |
|
1729
|
6 |
50018 |
if (!hashmap_ss_get(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val, &val_len, &val_utf8)) |
|
1732
|
3 |
50015 |
if (val_utf8) SvUTF8_on(RETVAL); |
|
1739
|
5 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1740
|
0 |
5 |
EXTRACT_STR_KEY(key_sv); |
|
1744
|
1 |
4 |
if (!hashmap_ss_get(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val, &val_len, &val_utf8)) |
|
1753
|
80508 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
80508 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
80508 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
80508 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1754
|
0 |
80508 |
EXTRACT_STR_KEY(key_sv); |
|
1762
|
2 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1763
|
0 |
2 |
EXTRACT_STR_KEY(key_sv); |
|
1771
|
8 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
8 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1772
|
0 |
8 |
RETVAL = self->size; |
|
1779
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1780
|
0 |
0 |
RETVAL = self->max_size; |
|
1787
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1788
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
1795
|
5 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1796
|
0 |
5 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1797
|
0 |
5 |
EXTEND(SP, self->size); |
|
1799
|
560 |
5 |
for (i = 0; i < self->capacity; i++) { |
|
1800
|
207 |
353 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
204 |
3 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
204 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1803
|
1 |
203 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
1804
|
0 |
204 |
mXPUSHs(sv); |
|
1811
|
3 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1812
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1813
|
0 |
3 |
EXTEND(SP, self->size); |
|
1815
|
528 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
1816
|
202 |
326 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
200 |
2 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
200 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1817
|
200 |
0 |
if (self->nodes[i].value) { |
|
1820
|
0 |
200 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(sv); |
|
1821
|
0 |
200 |
mXPUSHs(sv); |
|
1823
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
1831
|
1 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1832
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1833
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
1835
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
1836
|
2 |
14 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1839
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
1840
|
0 |
2 |
mXPUSHs(sv); |
|
1841
|
2 |
0 |
if (self->nodes[i].value) { |
|
1844
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(vsv); |
|
1845
|
0 |
2 |
mXPUSHs(vsv); |
|
1847
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
1855
|
47 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
47 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
47 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
47 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1856
|
0 |
47 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1857
|
90 |
3 |
while (self->iter_pos < self->capacity) { |
|
1859
|
44 |
46 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
44 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
44 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1860
|
0 |
44 |
EXTEND(SP, 2); |
|
1864
|
1 |
43 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(ksv); |
|
1865
|
0 |
44 |
mXPUSHs(ksv); |
|
1867
|
1 |
43 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
1868
|
43 |
0 |
if (self->nodes[i].value) { |
|
1871
|
1 |
42 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(vsv); |
|
1872
|
0 |
43 |
mXPUSHs(vsv); |
|
1874
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
1885
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1891
|
9 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1897
|
6 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1899
|
0 |
6 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
1901
|
608 |
6 |
for (i = 0; i < self->capacity; i++) { |
|
1902
|
243 |
365 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
241 |
2 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
241 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SS_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
1909
|
241 |
0 |
: newSV(0); |
|
1910
|
241 |
0 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
|
1 |
240 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
1911
|
1 |
240 |
(void)hv_store(hv, self->nodes[i].key, kutf8 ? -(I32)klen : (I32)klen, val, 0); |
|
1921
|
102 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
102 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
102 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
102 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1922
|
0 |
102 |
EXTRACT_STR_KEY(key_sv); |
|
1923
|
0 |
102 |
EXTRACT_STR_VAL(value); |
|
1932
|
9 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapSS, stash_ss, "Data::HashMap::SS", self_sv); |
|
1933
|
0 |
9 |
EXTRACT_STR_KEY(key_sv); |
|
1934
|
0 |
9 |
EXTRACT_STR_VAL(default_sv); |
|
1939
|
0 |
9 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
1940
|
9 |
0 |
if (self->nodes[idx].value) { |
|
1942
|
0 |
9 |
if (HM_UNPACK_UTF8(self->nodes[idx].val_len)) SvUTF8_on(RETVAL); |
|
1957
|
3 |
10 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
0 |
13 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
1959
|
0 |
13 |
if (!map) croak("Failed to create HashMap::I32S"); |
|
1967
|
13 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
13 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
13 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
13 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
1974
|
80416 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
80416 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
80416 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
80416 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
1975
|
0 |
80416 |
EXTRACT_STR_VAL(value); |
|
1983
|
50010 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
50010 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
1987
|
3 |
50007 |
if (!hashmap_i32s_get(self, key, &val, &val_len, &val_utf8)) |
|
1990
|
1 |
50006 |
if (val_utf8) SvUTF8_on(RETVAL); |
|
1997
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2001
|
0 |
1 |
if (!hashmap_i32s_get(self, key, &val, &val_len, &val_utf8)) |
|
2010
|
80006 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
80006 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
80006 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
80006 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2018
|
3 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2026
|
6 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2027
|
0 |
6 |
RETVAL = self->size; |
|
2034
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2035
|
0 |
0 |
RETVAL = self->max_size; |
|
2042
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2043
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
2050
|
2 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2051
|
0 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2052
|
0 |
2 |
EXTEND(SP, self->size); |
|
2054
|
32 |
2 |
for (i = 0; i < self->capacity; i++) { |
|
2055
|
2 |
30 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
2056
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2062
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2063
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2064
|
0 |
1 |
EXTEND(SP, self->size); |
|
2066
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2067
|
2 |
14 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2068
|
2 |
0 |
if (self->nodes[i].value) { |
|
2071
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(sv); |
|
2072
|
0 |
2 |
mXPUSHs(sv); |
|
2074
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
2082
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2083
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2084
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
2086
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2087
|
2 |
14 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2088
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2089
|
2 |
0 |
if (self->nodes[i].value) { |
|
2092
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(sv); |
|
2093
|
0 |
2 |
mXPUSHs(sv); |
|
2095
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
2103
|
3 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2104
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2105
|
16 |
1 |
while (self->iter_pos < self->capacity) { |
|
2107
|
2 |
14 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2108
|
0 |
2 |
EXTEND(SP, 2); |
|
2109
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2110
|
0 |
2 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
2111
|
2 |
0 |
if (self->nodes[i].value) { |
|
2114
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(vsv); |
|
2115
|
0 |
2 |
mXPUSHs(vsv); |
|
2117
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
2128
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2134
|
3 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2140
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2142
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2144
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2145
|
1 |
15 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2150
|
1 |
0 |
: newSV(0); |
|
2151
|
1 |
0 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
|
0 |
1 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
2164
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2165
|
0 |
0 |
EXTRACT_STR_VAL(value); |
|
2173
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32S, stash_i32s, "Data::HashMap::I32S", self_sv); |
|
2174
|
0 |
0 |
EXTRACT_STR_VAL(default_sv); |
|
2178
|
0 |
0 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
2179
|
0 |
0 |
if (self->nodes[idx].value) { |
|
2181
|
0 |
0 |
if (HM_UNPACK_UTF8(self->nodes[idx].val_len)) SvUTF8_on(RETVAL); |
|
2196
|
1 |
14 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
0 |
15 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
2198
|
0 |
15 |
if (!map) croak("Failed to create HashMap::SI32"); |
|
2206
|
15 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
15 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2213
|
80219 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
80219 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
80219 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
80219 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2214
|
0 |
80219 |
EXTRACT_STR_KEY(key_sv); |
|
2222
|
50010 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
50010 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2223
|
0 |
50010 |
EXTRACT_STR_KEY(key_sv); |
|
2225
|
3 |
50007 |
if (!hashmap_si32_get(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &value)) |
|
2234
|
80005 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
80005 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
80005 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
80005 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2235
|
0 |
80005 |
EXTRACT_STR_KEY(key_sv); |
|
2243
|
2 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2244
|
0 |
2 |
EXTRACT_STR_KEY(key_sv); |
|
2252
|
12 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
12 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
12 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
12 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2253
|
0 |
12 |
EXTRACT_STR_KEY(key_sv); |
|
2255
|
1 |
11 |
if (!hashmap_si32_increment(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val)) |
|
2264
|
3 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2265
|
0 |
3 |
EXTRACT_STR_KEY(key_sv); |
|
2267
|
1 |
2 |
if (!hashmap_si32_decrement(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val)) |
|
2276
|
6 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2277
|
0 |
6 |
EXTRACT_STR_KEY(key_sv); |
|
2279
|
2 |
4 |
if (!hashmap_si32_increment_by(self, _kstr, (uint32_t)_klen, _khash, _kutf8, delta, &val)) |
|
2288
|
5 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2289
|
0 |
5 |
RETVAL = self->size; |
|
2296
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2297
|
0 |
0 |
RETVAL = self->max_size; |
|
2304
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2305
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
2312
|
3 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2313
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2314
|
0 |
3 |
EXTEND(SP, self->size); |
|
2316
|
48 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
2317
|
8 |
40 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
7 |
1 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
7 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2320
|
1 |
6 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
2321
|
0 |
7 |
mXPUSHs(sv); |
|
2328
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2329
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2330
|
0 |
1 |
EXTEND(SP, self->size); |
|
2332
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2333
|
2 |
14 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
2334
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
2340
|
2 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2341
|
0 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2342
|
0 |
2 |
EXTEND(SP, self->size * 2); |
|
2344
|
32 |
2 |
for (i = 0; i < self->capacity; i++) { |
|
2345
|
8 |
24 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
7 |
1 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
7 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2348
|
1 |
6 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
2349
|
0 |
7 |
mXPUSHs(sv); |
|
2350
|
0 |
7 |
mXPUSHi(self->nodes[i].value); |
|
2357
|
3 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2358
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2359
|
16 |
1 |
while (self->iter_pos < self->capacity) { |
|
2361
|
2 |
14 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2362
|
0 |
2 |
EXTEND(SP, 2); |
|
2366
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(ksv); |
|
2367
|
0 |
2 |
mXPUSHs(ksv); |
|
2369
|
0 |
2 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
2370
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
2380
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2386
|
2 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2392
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2394
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2396
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2397
|
1 |
15 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI32_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2401
|
0 |
1 |
(void)hv_store(hv, self->nodes[i].key, kutf8 ? -(I32)klen : (I32)klen, val, 0); |
|
2411
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2412
|
0 |
1 |
EXTRACT_STR_KEY(key_sv); |
|
2420
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI32, stash_si32, "Data::HashMap::SI32", self_sv); |
|
2421
|
0 |
1 |
EXTRACT_STR_KEY(key_sv); |
|
2425
|
0 |
1 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
2438
|
2 |
17 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
1 |
18 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
2440
|
0 |
19 |
if (!map) croak("Failed to create HashMap::I16"); |
|
2448
|
19 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
19 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
19 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
19 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2455
|
81227 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
81227 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
81227 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
81227 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2463
|
30013 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
30013 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
30013 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
30013 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2465
|
6 |
30007 |
if (!hashmap_i16_get(self, key, &value)) XSRETURN_UNDEF; |
|
2473
|
80007 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
80007 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
80007 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
80007 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2481
|
4 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2489
|
12 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
12 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
12 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
12 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2491
|
3 |
9 |
if (!hashmap_i16_increment(self, key, &val)) |
|
2500
|
6 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2502
|
2 |
4 |
if (!hashmap_i16_decrement(self, key, &val)) |
|
2511
|
8 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
8 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2513
|
2 |
6 |
if (!hashmap_i16_increment_by(self, key, delta, &val)) |
|
2522
|
8 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
8 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2523
|
0 |
8 |
RETVAL = self->size; |
|
2530
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2531
|
0 |
0 |
RETVAL = self->max_size; |
|
2538
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2539
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
2546
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2547
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2548
|
0 |
3 |
EXTEND(SP, self->size); |
|
2550
|
48 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
2551
|
4 |
44 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
4 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
4 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
2552
|
0 |
4 |
mXPUSHi(self->nodes[i].key); |
|
2558
|
2 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2559
|
0 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2560
|
0 |
2 |
EXTEND(SP, self->size); |
|
2562
|
32 |
2 |
for (i = 0; i < self->capacity; i++) { |
|
2563
|
4 |
28 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
4 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
4 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
2564
|
0 |
4 |
mXPUSHi(self->nodes[i].value); |
|
2570
|
1 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2571
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2572
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
2574
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2575
|
2 |
14 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2576
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2577
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
2584
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2585
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2586
|
16 |
1 |
while (self->iter_pos < self->capacity) { |
|
2588
|
2 |
14 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2589
|
0 |
2 |
EXTEND(SP, 2); |
|
2590
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2591
|
0 |
2 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
2592
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
2602
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2608
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2614
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2616
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2618
|
528 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
2619
|
201 |
327 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
199 |
2 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
199 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2633
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2641
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16, stash_i16, "Data::HashMap::I16", self_sv); |
|
2645
|
1 |
2 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
2658
|
3 |
11 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
0 |
14 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
2660
|
0 |
14 |
if (!map) croak("Failed to create HashMap::I16S"); |
|
2668
|
14 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
14 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
14 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
14 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2675
|
60315 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
60315 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
60315 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
60315 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2676
|
0 |
60315 |
EXTRACT_STR_VAL(value); |
|
2684
|
30009 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
30009 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
30009 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
30009 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2688
|
3 |
30006 |
if (!hashmap_i16s_get(self, key, &val, &val_len, &val_utf8)) |
|
2691
|
1 |
30005 |
if (val_utf8) SvUTF8_on(RETVAL); |
|
2698
|
2 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2702
|
1 |
1 |
if (!hashmap_i16s_get(self, key, &val, &val_len, &val_utf8)) |
|
2711
|
60006 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
60006 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
60006 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
60006 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2719
|
4 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2727
|
8 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
8 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
8 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2728
|
0 |
8 |
RETVAL = self->size; |
|
2735
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2736
|
0 |
0 |
RETVAL = self->max_size; |
|
2743
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2744
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
2751
|
2 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2752
|
0 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2753
|
0 |
2 |
EXTEND(SP, self->size); |
|
2755
|
32 |
2 |
for (i = 0; i < self->capacity; i++) { |
|
2756
|
2 |
30 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
2757
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2763
|
1 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2764
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2765
|
0 |
1 |
EXTEND(SP, self->size); |
|
2767
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2768
|
2 |
14 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2769
|
2 |
0 |
if (self->nodes[i].value) { |
|
2772
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(sv); |
|
2773
|
0 |
2 |
mXPUSHs(sv); |
|
2775
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
2783
|
1 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2784
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2785
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
2787
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
2788
|
2 |
14 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2789
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2790
|
2 |
0 |
if (self->nodes[i].value) { |
|
2793
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(sv); |
|
2794
|
0 |
2 |
mXPUSHs(sv); |
|
2796
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
2804
|
3 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2805
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2806
|
16 |
1 |
while (self->iter_pos < self->capacity) { |
|
2808
|
2 |
14 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2809
|
0 |
2 |
EXTEND(SP, 2); |
|
2810
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
2811
|
0 |
2 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
2812
|
2 |
0 |
if (self->nodes[i].value) { |
|
2815
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].val_len)) SvUTF8_on(vsv); |
|
2816
|
0 |
2 |
mXPUSHs(vsv); |
|
2818
|
0 |
0 |
XPUSHs(&PL_sv_undef); |
|
2829
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2835
|
3 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2841
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2843
|
0 |
0 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
2845
|
0 |
0 |
for (i = 0; i < self->capacity; i++) { |
|
2846
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16S_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
2851
|
0 |
0 |
: newSV(0); |
|
2852
|
0 |
0 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
|
0 |
0 |
if (self->nodes[i].value && vutf8) SvUTF8_on(val); |
|
2865
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2866
|
0 |
0 |
EXTRACT_STR_VAL(value); |
|
2874
|
1 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16S, stash_i16s, "Data::HashMap::I16S", self_sv); |
|
2875
|
0 |
1 |
EXTRACT_STR_VAL(default_sv); |
|
2879
|
0 |
1 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
2880
|
1 |
0 |
if (self->nodes[idx].value) { |
|
2882
|
0 |
1 |
if (HM_UNPACK_UTF8(self->nodes[idx].val_len)) SvUTF8_on(RETVAL); |
|
2897
|
2 |
12 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
1 |
13 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
2899
|
0 |
14 |
if (!map) croak("Failed to create HashMap::SI16"); |
|
2907
|
14 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
14 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
14 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
14 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2914
|
80119 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
80119 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
80119 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
80119 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2915
|
0 |
80119 |
EXTRACT_STR_KEY(key_sv); |
|
2923
|
50010 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
50010 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
50010 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2924
|
0 |
50010 |
EXTRACT_STR_KEY(key_sv); |
|
2926
|
4 |
50006 |
if (!hashmap_si16_get(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &value)) |
|
2935
|
80005 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
80005 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
80005 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
80005 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2936
|
0 |
80005 |
EXTRACT_STR_KEY(key_sv); |
|
2944
|
4 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2945
|
0 |
4 |
EXTRACT_STR_KEY(key_sv); |
|
2953
|
10 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
10 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
10 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
10 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2954
|
0 |
10 |
EXTRACT_STR_KEY(key_sv); |
|
2956
|
1 |
9 |
if (!hashmap_si16_increment(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val)) |
|
2965
|
5 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2966
|
0 |
5 |
EXTRACT_STR_KEY(key_sv); |
|
2968
|
1 |
4 |
if (!hashmap_si16_decrement(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val)) |
|
2977
|
6 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2978
|
0 |
6 |
EXTRACT_STR_KEY(key_sv); |
|
2980
|
2 |
4 |
if (!hashmap_si16_increment_by(self, _kstr, (uint32_t)_klen, _khash, _kutf8, delta, &val)) |
|
2989
|
6 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2990
|
0 |
6 |
RETVAL = self->size; |
|
2997
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
2998
|
0 |
0 |
RETVAL = self->max_size; |
|
3005
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3006
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
3013
|
2 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3014
|
0 |
2 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3015
|
0 |
2 |
EXTEND(SP, self->size); |
|
3017
|
32 |
2 |
for (i = 0; i < self->capacity; i++) { |
|
3018
|
2 |
30 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3021
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
3022
|
0 |
2 |
mXPUSHs(sv); |
|
3029
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3030
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3031
|
0 |
1 |
EXTEND(SP, self->size); |
|
3033
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3034
|
2 |
14 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
3035
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
3041
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3042
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3043
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
3045
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3046
|
2 |
14 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3049
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
3050
|
0 |
2 |
mXPUSHs(sv); |
|
3051
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
3058
|
3 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3059
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3060
|
16 |
1 |
while (self->iter_pos < self->capacity) { |
|
3062
|
2 |
14 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3063
|
0 |
2 |
EXTEND(SP, 2); |
|
3067
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(ksv); |
|
3068
|
0 |
2 |
mXPUSHs(ksv); |
|
3070
|
0 |
2 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
3071
|
0 |
2 |
mXPUSHi(self->nodes[i].value); |
|
3081
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3087
|
2 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3093
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3095
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3097
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3098
|
1 |
15 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SI16_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3102
|
0 |
1 |
(void)hv_store(hv, self->nodes[i].key, kutf8 ? -(I32)klen : (I32)klen, val, 0); |
|
3112
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3113
|
0 |
1 |
EXTRACT_STR_KEY(key_sv); |
|
3121
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSI16, stash_si16, "Data::HashMap::SI16", self_sv); |
|
3122
|
0 |
0 |
EXTRACT_STR_KEY(key_sv); |
|
3126
|
0 |
0 |
if (idx >= self->capacity) XSRETURN_UNDEF; |
|
3139
|
4 |
11 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
2 |
13 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
3141
|
0 |
15 |
if (!map) croak("Failed to create HashMap::I32A"); |
|
3150
|
15 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
15 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3157
|
50127 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
50127 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
50127 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
50127 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3160
|
2 |
50125 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3167
|
50016 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
50016 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
50016 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
50016 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3169
|
4 |
50012 |
if (!hashmap_i32a_get(self, key, &val)) XSRETURN_UNDEF; |
|
3177
|
50005 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
50005 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
50005 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
50005 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3185
|
3 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3193
|
9 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3194
|
0 |
9 |
RETVAL = self->size; |
|
3201
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3202
|
0 |
0 |
RETVAL = self->max_size; |
|
3209
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3210
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
3217
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3218
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3219
|
0 |
1 |
EXTEND(SP, self->size); |
|
3221
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3222
|
2 |
14 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
3223
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
3229
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3230
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3231
|
0 |
1 |
EXTEND(SP, self->size); |
|
3233
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3234
|
2 |
14 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3235
|
2 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3236
|
0 |
2 |
mXPUSHs(sv); |
|
3243
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3244
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3245
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
3247
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3248
|
2 |
14 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3249
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
3250
|
2 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3251
|
0 |
2 |
mXPUSHs(sv); |
|
3258
|
6 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3259
|
0 |
6 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3260
|
32 |
2 |
while (self->iter_pos < self->capacity) { |
|
3262
|
4 |
28 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
4 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
4 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3263
|
0 |
4 |
EXTEND(SP, 2); |
|
3264
|
0 |
4 |
mXPUSHi(self->nodes[i].key); |
|
3265
|
0 |
4 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
3266
|
4 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3267
|
0 |
4 |
mXPUSHs(sv); |
|
3277
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3283
|
3 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3289
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3291
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3293
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3294
|
1 |
15 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I32A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3295
|
1 |
0 |
SV* val = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3308
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3311
|
0 |
0 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3318
|
2 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI32A, stash_i32a, "Data::HashMap::I32A", self_sv); |
|
3322
|
0 |
2 |
if (idx >= self->capacity) { |
|
3326
|
0 |
2 |
if (was_found) SvREFCNT_dec(default_value); |
|
3339
|
4 |
11 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
2 |
13 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
3341
|
0 |
15 |
if (!map) croak("Failed to create HashMap::I16A"); |
|
3350
|
15 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
15 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
15 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3357
|
30067 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
30067 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
30067 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
30067 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3360
|
2 |
30065 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3367
|
30016 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
30016 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
30016 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
30016 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3369
|
4 |
30012 |
if (!hashmap_i16a_get(self, key, &val)) XSRETURN_UNDEF; |
|
3377
|
30005 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
30005 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
30005 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
30005 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3385
|
3 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3393
|
9 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
9 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
9 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3394
|
0 |
9 |
RETVAL = self->size; |
|
3401
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3402
|
0 |
0 |
RETVAL = self->max_size; |
|
3409
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3410
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
3417
|
1 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3418
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3419
|
0 |
1 |
EXTEND(SP, self->size); |
|
3421
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3422
|
2 |
14 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
2 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
2 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
3423
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
3429
|
1 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3430
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3431
|
0 |
1 |
EXTEND(SP, self->size); |
|
3433
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3434
|
2 |
14 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3435
|
2 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3436
|
0 |
2 |
mXPUSHs(sv); |
|
3443
|
1 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3444
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3445
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
3447
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3448
|
2 |
14 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3449
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
3450
|
2 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3451
|
0 |
2 |
mXPUSHs(sv); |
|
3458
|
6 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
6 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
6 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3459
|
0 |
6 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3460
|
32 |
2 |
while (self->iter_pos < self->capacity) { |
|
3462
|
4 |
28 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
4 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
4 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3463
|
0 |
4 |
EXTEND(SP, 2); |
|
3464
|
0 |
4 |
mXPUSHi(self->nodes[i].key); |
|
3465
|
0 |
4 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
3466
|
4 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3467
|
0 |
4 |
mXPUSHs(sv); |
|
3477
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3483
|
3 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3489
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3491
|
0 |
0 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3493
|
0 |
0 |
for (i = 0; i < self->capacity; i++) { |
|
3494
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (I16A_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3495
|
0 |
0 |
SV* val = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3508
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3511
|
0 |
0 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3518
|
2 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
2 |
0 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
|
0 |
2 |
EXTRACT_MAP(HashMapI16A, stash_i16a, "Data::HashMap::I16A", self_sv); |
|
3522
|
0 |
2 |
if (idx >= self->capacity) { |
|
3526
|
0 |
2 |
if (was_found) SvREFCNT_dec(default_value); |
|
3539
|
8 |
39 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
4 |
43 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
3541
|
0 |
47 |
if (!map) croak("Failed to create HashMap::IA"); |
|
3550
|
47 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
47 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
47 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
47 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3557
|
81917 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
81917 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
81917 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
81917 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3560
|
2 |
81915 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3567
|
50023 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
50023 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
50023 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
50023 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3569
|
7 |
50016 |
if (!hashmap_ia_get(self, key, &val)) XSRETURN_UNDEF; |
|
3577
|
80505 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
80505 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
80505 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
80505 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3585
|
4 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3593
|
11 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
11 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
11 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
11 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3594
|
0 |
11 |
RETVAL = self->size; |
|
3601
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3602
|
0 |
0 |
RETVAL = self->max_size; |
|
3609
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3610
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
3617
|
5 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3618
|
1 |
4 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3619
|
0 |
5 |
EXTEND(SP, self->size); |
|
3621
|
304 |
5 |
for (i = 0; i < self->capacity; i++) { |
|
3622
|
104 |
200 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
101 |
3 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
1 |
100 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
1 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
|
0 |
1 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) |
|
3623
|
0 |
100 |
mXPUSHi(self->nodes[i].key); |
|
3629
|
3 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3630
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3631
|
0 |
3 |
EXTEND(SP, self->size); |
|
3633
|
272 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
3634
|
102 |
170 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
100 |
2 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
100 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3635
|
100 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3636
|
0 |
100 |
mXPUSHs(sv); |
|
3643
|
1 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3644
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3645
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
3647
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3648
|
2 |
14 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3649
|
0 |
2 |
mXPUSHi(self->nodes[i].key); |
|
3650
|
2 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3651
|
0 |
2 |
mXPUSHs(sv); |
|
3658
|
48 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
48 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
48 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
48 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3659
|
0 |
48 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3660
|
96 |
4 |
while (self->iter_pos < self->capacity) { |
|
3662
|
44 |
52 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
44 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
44 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3663
|
0 |
44 |
EXTEND(SP, 2); |
|
3664
|
0 |
44 |
mXPUSHi(self->nodes[i].key); |
|
3665
|
0 |
44 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
3666
|
44 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3667
|
0 |
44 |
mXPUSHs(sv); |
|
3677
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3683
|
7 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
7 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
7 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
7 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3689
|
3 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3691
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3693
|
80 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
3694
|
41 |
39 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
41 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
41 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (IA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3695
|
41 |
0 |
SV* val = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3708
|
101 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
101 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
101 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
101 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3711
|
0 |
101 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3718
|
4 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapIA, stash_ia, "Data::HashMap::IA", self_sv); |
|
3722
|
0 |
4 |
if (idx >= self->capacity) { |
|
3726
|
1 |
3 |
if (was_found) SvREFCNT_dec(default_value); |
|
3739
|
8 |
36 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
|
4 |
40 |
EXTRACT_NEW_ARGS(_max_size, _ttl); |
|
3741
|
0 |
44 |
if (!map) croak("Failed to create HashMap::SA"); |
|
3750
|
44 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
44 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
44 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
44 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3757
|
81579 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
81579 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
81579 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
81579 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3758
|
0 |
81579 |
EXTRACT_STR_KEY(key_sv); |
|
3761
|
0 |
81579 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3768
|
50024 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
50024 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
50024 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
50024 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3769
|
0 |
50024 |
EXTRACT_STR_KEY(key_sv); |
|
3771
|
5 |
50019 |
if (!hashmap_sa_get(self, _kstr, (uint32_t)_klen, _khash, _kutf8, &val)) |
|
3780
|
80505 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
80505 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
80505 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
80505 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3781
|
0 |
80505 |
EXTRACT_STR_KEY(key_sv); |
|
3789
|
5 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3790
|
0 |
5 |
EXTRACT_STR_KEY(key_sv); |
|
3798
|
12 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
12 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
12 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
12 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3799
|
0 |
12 |
RETVAL = self->size; |
|
3806
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3807
|
0 |
0 |
RETVAL = self->max_size; |
|
3814
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3815
|
0 |
0 |
RETVAL = (UV)self->default_ttl; |
|
3822
|
5 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
5 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
5 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3823
|
1 |
4 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3824
|
0 |
5 |
EXTEND(SP, self->size); |
|
3826
|
304 |
5 |
for (i = 0; i < self->capacity; i++) { |
|
3827
|
104 |
200 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
101 |
3 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
100 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3830
|
0 |
100 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(sv); |
|
3831
|
0 |
100 |
mXPUSHs(sv); |
|
3838
|
3 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3839
|
0 |
3 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3840
|
0 |
3 |
EXTEND(SP, self->size); |
|
3842
|
272 |
3 |
for (i = 0; i < self->capacity; i++) { |
|
3843
|
102 |
170 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
100 |
2 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
100 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3844
|
100 |
0 |
SV* sv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3845
|
0 |
100 |
mXPUSHs(sv); |
|
3852
|
1 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3853
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3854
|
0 |
1 |
EXTEND(SP, self->size * 2); |
|
3856
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3857
|
2 |
14 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
2 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
2 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3860
|
0 |
2 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(ksv); |
|
3861
|
0 |
2 |
mXPUSHs(ksv); |
|
3862
|
2 |
0 |
SV* vsv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3863
|
0 |
2 |
mXPUSHs(vsv); |
|
3870
|
48 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
48 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
48 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
48 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3871
|
0 |
48 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3872
|
96 |
4 |
while (self->iter_pos < self->capacity) { |
|
3874
|
44 |
52 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
44 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
44 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3875
|
0 |
44 |
EXTEND(SP, 2); |
|
3879
|
0 |
44 |
if (HM_UNPACK_UTF8(self->nodes[i].key_len)) SvUTF8_on(ksv); |
|
3880
|
0 |
44 |
mXPUSHs(ksv); |
|
3882
|
0 |
44 |
if (GIMME_V == G_SCALAR) XSRETURN(1); |
|
3883
|
44 |
0 |
SV* vsv = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3884
|
0 |
44 |
mXPUSHs(vsv); |
|
3894
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3900
|
3 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
3 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
3 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3906
|
1 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3908
|
0 |
1 |
uint32_t now = self->expires_at ? (uint32_t)time(NULL) : 0; |
|
3910
|
16 |
1 |
for (i = 0; i < self->capacity; i++) { |
|
3911
|
1 |
15 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
1 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
1 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
|
0 |
0 |
if (SA_NODE_LIVE(self->nodes[i]) && !HM_TTL_SKIP_EXPIRED(self, i, now)) { |
|
3914
|
1 |
0 |
SV* val = self->nodes[i].value ? SvREFCNT_inc((SV*)self->nodes[i].value) : &PL_sv_undef; |
|
3915
|
0 |
1 |
(void)hv_store(hv, self->nodes[i].key, kutf8 ? -(I32)klen : (I32)klen, val, 0); |
|
3925
|
1 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
1 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
1 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3926
|
0 |
1 |
EXTRACT_STR_KEY(key_sv); |
|
3929
|
0 |
1 |
if (!RETVAL) SvREFCNT_dec(value); |
|
3936
|
4 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
4 |
0 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
|
0 |
4 |
EXTRACT_MAP(HashMapSA, stash_sa, "Data::HashMap::SA", self_sv); |
|
3937
|
0 |
4 |
EXTRACT_STR_KEY(key_sv); |
|
3941
|
0 |
4 |
if (idx >= self->capacity) { |
|
3945
|
1 |
3 |
if (was_found) SvREFCNT_dec(default_value); |