630
631
632
-633
+633
+634
+635
+636
+637
+638
+639
+640
+641 |
@@ -828,6 +836,11 @@
1x
+32x
+
+5x
+
+
27x
27x
@@ -881,8 +894,6 @@
72x
-
-
65x
65x
@@ -1214,6 +1225,11 @@
1x
+34x
+
+6x
+
+
28x
28x
@@ -1272,7 +1288,7 @@
1x
-1x
+3x
@@ -1460,6 +1476,11 @@
Qlobber.prototype._remove_value = function (vals, val)
{
+ if (val === undefined)
+ {
+ return true;
+ }
+
var index = vals.lastIndexOf(val);
if (index >= 0)
@@ -1511,9 +1532,7 @@
{
st = sub_trie.get(this._separator);
- if (st &&
- ((val === undefined) ||
- this._remove_value(st, val)))
+ if (st && this._remove_value(st, val))
{
sub_trie.delete(this._separator);
return true;
@@ -1846,6 +1865,11 @@
QlobberDedup.prototype._remove_value = function (vals, val)
{
+ if (val === undefined)
+ {
+ return true;
+ }
+
vals.delete(val);
return vals.size === 0;
};
@@ -1945,7 +1969,7 @@
diff --git a/coverage/lcov.info b/coverage/lcov.info
index 4c02531..fbda26d 100644
--- a/coverage/lcov.info
+++ b/coverage/lcov.info
@@ -15,41 +15,41 @@ FN:132,(anonymous_1)
FN:137,(anonymous_2)
FN:142,(anonymous_3)
FN:152,(anonymous_4)
-FN:164,(anonymous_5)
-FN:197,(anonymous_6)
-FN:234,(anonymous_7)
-FN:253,(anonymous_8)
-FN:318,(anonymous_9)
-FN:328,(anonymous_10)
-FN:350,(anonymous_11)
-FN:413,(anonymous_12)
-FN:438,(anonymous_13)
-FN:453,(anonymous_14)
-FN:465,(anonymous_15)
-FN:477,(anonymous_16)
-FN:489,(anonymous_17)
-FN:500,(anonymous_18)
-FN:513,QlobberDedup
-FN:520,(anonymous_20)
-FN:525,(anonymous_21)
-FN:530,(anonymous_22)
-FN:532,(anonymous_23)
-FN:538,(anonymous_24)
-FN:551,(anonymous_25)
-FN:562,(anonymous_26)
-FN:580,QlobberTrue
-FN:587,(anonymous_28)
-FN:592,(anonymous_29)
-FN:596,(anonymous_30)
-FN:609,(anonymous_31)
-FN:624,(anonymous_32)
+FN:169,(anonymous_5)
+FN:202,(anonymous_6)
+FN:237,(anonymous_7)
+FN:256,(anonymous_8)
+FN:321,(anonymous_9)
+FN:331,(anonymous_10)
+FN:353,(anonymous_11)
+FN:416,(anonymous_12)
+FN:441,(anonymous_13)
+FN:456,(anonymous_14)
+FN:468,(anonymous_15)
+FN:480,(anonymous_16)
+FN:492,(anonymous_17)
+FN:503,(anonymous_18)
+FN:516,QlobberDedup
+FN:523,(anonymous_20)
+FN:528,(anonymous_21)
+FN:533,(anonymous_22)
+FN:535,(anonymous_23)
+FN:541,(anonymous_24)
+FN:559,(anonymous_25)
+FN:570,(anonymous_26)
+FN:588,QlobberTrue
+FN:595,(anonymous_28)
+FN:600,(anonymous_29)
+FN:604,(anonymous_30)
+FN:617,(anonymous_31)
+FN:632,(anonymous_32)
FNF:33
FNH:33
FNDA:44,Qlobber
FNDA:167,(anonymous_1)
FNDA:360000,(anonymous_2)
FNDA:1015,(anonymous_3)
-FNDA:27,(anonymous_4)
+FNDA:32,(anonymous_4)
FNDA:4321246,(anonymous_5)
FNDA:250,(anonymous_6)
FNDA:1944,(anonymous_7)
@@ -69,13 +69,13 @@ FNDA:174,(anonymous_20)
FNDA:360002,(anonymous_21)
FNDA:1017,(anonymous_22)
FNDA:121017,(anonymous_23)
-FNDA:28,(anonymous_24)
+FNDA:34,(anonymous_24)
FNDA:3970,(anonymous_25)
FNDA:73,(anonymous_26)
FNDA:5,QlobberTrue
FNDA:6,(anonymous_28)
FNDA:1,(anonymous_29)
-FNDA:1,(anonymous_30)
+FNDA:3,(anonymous_30)
FNDA:7,(anonymous_31)
FNDA:4,(anonymous_32)
DA:102,1
@@ -95,159 +95,163 @@ DA:144,1015
DA:146,1015
DA:148,121015
DA:152,1
-DA:154,27
-DA:156,27
-DA:158,26
+DA:154,32
+DA:156,5
+DA:159,27
DA:161,27
-DA:164,1
-DA:168,4321246
-DA:170,720358
-DA:172,720358
-DA:174,720005
-DA:178,353
-DA:179,353
-DA:182,720358
-DA:185,3600888
-DA:186,3600888
-DA:188,3600888
-DA:190,487
-DA:191,487
-DA:194,3600888
-DA:197,1
-DA:201,250
-DA:203,72
-DA:205,72
-DA:209,65
-DA:210,65
-DA:213,7
-DA:216,178
-DA:217,178
+DA:163,26
+DA:166,27
+DA:169,1
+DA:173,4321246
+DA:175,720358
+DA:177,720358
+DA:179,720005
+DA:183,353
+DA:184,353
+DA:187,720358
+DA:190,3600888
+DA:191,3600888
+DA:193,3600888
+DA:195,487
+DA:196,487
+DA:199,3600888
+DA:202,1
+DA:206,250
+DA:208,72
+DA:210,72
+DA:212,65
+DA:213,65
+DA:216,7
DA:219,178
-DA:221,2
-DA:224,176
-DA:226,176
-DA:228,85
-DA:231,176
-DA:234,1
-DA:238,1944
-DA:240,2348
-DA:242,520
-DA:244,928
-DA:246,520
-DA:250,1944
-DA:253,1
-DA:257,3877
-DA:259,3877
-DA:262,1944
-DA:264,1944
-DA:267,3877
-DA:269,2242
-DA:271,2242
-DA:273,2052
-DA:275,106
-DA:276,106
-DA:277,106
-DA:279,1946
-DA:281,124
-DA:282,124
-DA:286,1822
-DA:292,1635
-DA:294,1635
-DA:296,1631
-DA:298,1631
-DA:300,342
-DA:304,1635
-DA:306,1607
-DA:308,1607
-DA:310,518
-DA:315,3877
-DA:318,1
-DA:320,145
-DA:325,145
-DA:328,1
-DA:332,11560
-DA:334,14208
-DA:336,3316
-DA:338,5662
-DA:340,520
-DA:343,2796
-DA:347,11040
-DA:350,1
-DA:354,21296
-DA:356,21296
-DA:359,11560
-DA:363,1052
-DA:367,20244
-DA:369,12254
-DA:371,12254
-DA:373,739
-DA:378,7990
-DA:380,7990
-DA:382,7986
-DA:384,7986
-DA:386,412
-DA:390,7578
-DA:392,7518
-DA:394,7518
-DA:396,412
-DA:401,18681
-DA:413,1
-DA:415,720359
-DA:416,720359
-DA:418,1
-DA:422,720358
-DA:423,720358
-DA:425,6
-DA:428,720359
-DA:438,1
-DA:440,74
-DA:442,3
-DA:444,74
-DA:453,1
-DA:455,67
-DA:465,1
-DA:467,873
-DA:477,1
-DA:479,3966
-DA:489,1
-DA:491,3
-DA:492,3
-DA:494,1
-DA:496,3
-DA:500,1
-DA:502,9
-DA:515,20
-DA:518,1
-DA:520,1
-DA:522,174
-DA:525,1
-DA:527,360002
-DA:530,1
-DA:532,1017
-DA:534,121017
-DA:538,1
-DA:540,28
-DA:541,28
-DA:551,1
-DA:553,3970
-DA:562,1
-DA:564,73
-DA:582,5
-DA:585,1
-DA:587,1
-DA:589,6
-DA:592,1
-DA:596,1
-DA:598,1
-DA:609,1
-DA:611,7
-DA:624,1
-DA:626,4
-DA:629,1
-DA:630,1
-DA:631,1
-LF:168
-LH:168
+DA:220,178
+DA:222,178
+DA:224,2
+DA:227,176
+DA:229,176
+DA:231,85
+DA:234,176
+DA:237,1
+DA:241,1944
+DA:243,2348
+DA:245,520
+DA:247,928
+DA:249,520
+DA:253,1944
+DA:256,1
+DA:260,3877
+DA:262,3877
+DA:265,1944
+DA:267,1944
+DA:270,3877
+DA:272,2242
+DA:274,2242
+DA:276,2052
+DA:278,106
+DA:279,106
+DA:280,106
+DA:282,1946
+DA:284,124
+DA:285,124
+DA:289,1822
+DA:295,1635
+DA:297,1635
+DA:299,1631
+DA:301,1631
+DA:303,342
+DA:307,1635
+DA:309,1607
+DA:311,1607
+DA:313,518
+DA:318,3877
+DA:321,1
+DA:323,145
+DA:328,145
+DA:331,1
+DA:335,11560
+DA:337,14208
+DA:339,3316
+DA:341,5662
+DA:343,520
+DA:346,2796
+DA:350,11040
+DA:353,1
+DA:357,21296
+DA:359,21296
+DA:362,11560
+DA:366,1052
+DA:370,20244
+DA:372,12254
+DA:374,12254
+DA:376,739
+DA:381,7990
+DA:383,7990
+DA:385,7986
+DA:387,7986
+DA:389,412
+DA:393,7578
+DA:395,7518
+DA:397,7518
+DA:399,412
+DA:404,18681
+DA:416,1
+DA:418,720359
+DA:419,720359
+DA:421,1
+DA:425,720358
+DA:426,720358
+DA:428,6
+DA:431,720359
+DA:441,1
+DA:443,74
+DA:445,3
+DA:447,74
+DA:456,1
+DA:458,67
+DA:468,1
+DA:470,873
+DA:480,1
+DA:482,3966
+DA:492,1
+DA:494,3
+DA:495,3
+DA:497,1
+DA:499,3
+DA:503,1
+DA:505,9
+DA:518,20
+DA:521,1
+DA:523,1
+DA:525,174
+DA:528,1
+DA:530,360002
+DA:533,1
+DA:535,1017
+DA:537,121017
+DA:541,1
+DA:543,34
+DA:545,6
+DA:548,28
+DA:549,28
+DA:559,1
+DA:561,3970
+DA:570,1
+DA:572,73
+DA:590,5
+DA:593,1
+DA:595,1
+DA:597,6
+DA:600,1
+DA:604,1
+DA:606,3
+DA:617,1
+DA:619,7
+DA:632,1
+DA:634,4
+DA:637,1
+DA:638,1
+DA:639,1
+LF:172
+LH:172
BRDA:120,0,0,44
BRDA:120,0,1,36
BRDA:122,1,0,44
@@ -258,91 +262,94 @@ BRDA:124,3,0,44
BRDA:124,3,1,42
BRDA:126,4,0,6
BRDA:126,4,1,38
-BRDA:156,5,0,26
-BRDA:156,5,1,1
-BRDA:168,6,0,720358
-BRDA:168,6,1,3600888
-BRDA:172,7,0,720005
-BRDA:172,7,1,353
-BRDA:188,8,0,487
-BRDA:188,8,1,3600401
-BRDA:201,9,0,72
-BRDA:201,9,1,178
-BRDA:205,10,0,65
-BRDA:205,10,1,7
-BRDA:205,11,0,72
-BRDA:205,11,1,70
-BRDA:205,11,2,57
-BRDA:219,12,0,2
-BRDA:219,12,1,176
-BRDA:226,13,0,85
-BRDA:226,13,1,91
-BRDA:240,14,0,520
-BRDA:240,14,1,1828
-BRDA:259,15,0,1944
-BRDA:259,15,1,1933
-BRDA:267,16,0,2242
-BRDA:267,16,1,1635
-BRDA:271,17,0,2052
-BRDA:271,17,1,190
-BRDA:273,18,0,106
-BRDA:273,18,1,1946
-BRDA:279,19,0,124
-BRDA:279,19,1,1822
-BRDA:294,20,0,1631
-BRDA:294,20,1,4
-BRDA:294,21,0,1635
-BRDA:294,21,1,1633
-BRDA:298,22,0,342
-BRDA:298,22,1,1289
-BRDA:304,23,0,1607
-BRDA:304,23,1,28
-BRDA:308,24,0,518
-BRDA:308,24,1,1089
-BRDA:325,25,0,145
-BRDA:325,25,1,106
-BRDA:334,26,0,3316
-BRDA:334,26,1,10892
-BRDA:338,27,0,520
-BRDA:338,27,1,5142
-BRDA:356,28,0,11560
-BRDA:356,28,1,9736
-BRDA:359,29,0,1052
-BRDA:359,29,1,10508
-BRDA:359,30,0,11560
-BRDA:359,30,1,11040
-BRDA:367,31,0,12254
-BRDA:367,31,1,7990
-BRDA:371,32,0,739
-BRDA:371,32,1,11515
-BRDA:371,33,0,12254
-BRDA:371,33,1,11476
-BRDA:380,34,0,7986
-BRDA:380,34,1,4
-BRDA:380,35,0,7990
-BRDA:380,35,1,7988
-BRDA:384,36,0,412
-BRDA:384,36,1,7574
-BRDA:384,37,0,7986
-BRDA:384,37,1,1690
-BRDA:390,38,0,7518
-BRDA:390,38,1,60
-BRDA:394,39,0,412
-BRDA:394,39,1,7106
-BRDA:394,40,0,7518
-BRDA:394,40,1,2031
-BRDA:415,41,0,720359
-BRDA:415,41,1,7
-BRDA:416,42,0,1
-BRDA:416,42,1,720358
-BRDA:423,43,0,6
-BRDA:423,43,1,720352
-BRDA:440,44,0,3
-BRDA:440,44,1,71
-BRDA:440,45,0,74
-BRDA:440,45,1,65
-BRDA:492,46,0,1
-BRDA:492,46,1,2
-BRF:95
-BRH:95
+BRDA:154,5,0,5
+BRDA:154,5,1,27
+BRDA:161,6,0,26
+BRDA:161,6,1,1
+BRDA:173,7,0,720358
+BRDA:173,7,1,3600888
+BRDA:177,8,0,720005
+BRDA:177,8,1,353
+BRDA:193,9,0,487
+BRDA:193,9,1,3600401
+BRDA:206,10,0,72
+BRDA:206,10,1,178
+BRDA:210,11,0,65
+BRDA:210,11,1,7
+BRDA:210,12,0,72
+BRDA:210,12,1,70
+BRDA:222,13,0,2
+BRDA:222,13,1,176
+BRDA:229,14,0,85
+BRDA:229,14,1,91
+BRDA:243,15,0,520
+BRDA:243,15,1,1828
+BRDA:262,16,0,1944
+BRDA:262,16,1,1933
+BRDA:270,17,0,2242
+BRDA:270,17,1,1635
+BRDA:274,18,0,2052
+BRDA:274,18,1,190
+BRDA:276,19,0,106
+BRDA:276,19,1,1946
+BRDA:282,20,0,124
+BRDA:282,20,1,1822
+BRDA:297,21,0,1631
+BRDA:297,21,1,4
+BRDA:297,22,0,1635
+BRDA:297,22,1,1633
+BRDA:301,23,0,342
+BRDA:301,23,1,1289
+BRDA:307,24,0,1607
+BRDA:307,24,1,28
+BRDA:311,25,0,518
+BRDA:311,25,1,1089
+BRDA:328,26,0,145
+BRDA:328,26,1,106
+BRDA:337,27,0,3316
+BRDA:337,27,1,10892
+BRDA:341,28,0,520
+BRDA:341,28,1,5142
+BRDA:359,29,0,11560
+BRDA:359,29,1,9736
+BRDA:362,30,0,1052
+BRDA:362,30,1,10508
+BRDA:362,31,0,11560
+BRDA:362,31,1,11040
+BRDA:370,32,0,12254
+BRDA:370,32,1,7990
+BRDA:374,33,0,739
+BRDA:374,33,1,11515
+BRDA:374,34,0,12254
+BRDA:374,34,1,11476
+BRDA:383,35,0,7986
+BRDA:383,35,1,4
+BRDA:383,36,0,7990
+BRDA:383,36,1,7988
+BRDA:387,37,0,412
+BRDA:387,37,1,7574
+BRDA:387,38,0,7986
+BRDA:387,38,1,1690
+BRDA:393,39,0,7518
+BRDA:393,39,1,60
+BRDA:397,40,0,412
+BRDA:397,40,1,7106
+BRDA:397,41,0,7518
+BRDA:397,41,1,2031
+BRDA:418,42,0,720359
+BRDA:418,42,1,7
+BRDA:419,43,0,1
+BRDA:419,43,1,720358
+BRDA:426,44,0,6
+BRDA:426,44,1,720352
+BRDA:443,45,0,3
+BRDA:443,45,1,71
+BRDA:443,46,0,74
+BRDA:443,46,1,65
+BRDA:495,47,0,1
+BRDA:495,47,1,2
+BRDA:543,48,0,6
+BRDA:543,48,1,28
+BRF:98
+BRH:98
end_of_record
diff --git a/lib/qlobber.js b/lib/qlobber.js
index 5b1efab..b74b3c7 100644
--- a/lib/qlobber.js
+++ b/lib/qlobber.js
@@ -151,6 +151,11 @@ Qlobber.prototype._add_values = function (dest, origin)
Qlobber.prototype._remove_value = function (vals, val)
{
+ if (val === undefined)
+ {
+ return true;
+ }
+
var index = vals.lastIndexOf(val);
if (index >= 0)
@@ -202,9 +207,7 @@ Qlobber.prototype._remove = function (val, i, words, sub_trie)
{
st = sub_trie.get(this._separator);
- if (st &&
- ((val === undefined) ||
- this._remove_value(st, val)))
+ if (st && this._remove_value(st, val))
{
sub_trie.delete(this._separator);
return true;
@@ -537,6 +540,11 @@ QlobberDedup.prototype._add_values = function (dest, origin)
QlobberDedup.prototype._remove_value = function (vals, val)
{
+ if (val === undefined)
+ {
+ return true;
+ }
+
vals.delete(val);
return vals.size === 0;
};
diff --git a/package.json b/package.json
index 38b7b03..93346e0 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "qlobber",
"description": "Node.js globbing for amqp-like topics",
- "version": "1.0.0",
+ "version": "1.1.0",
"homepage": "https://github.com/davedoesdev/qlobber",
"author": {
"name": "David Halls",
diff --git a/test/custom.js b/test/custom.js
index f98eb10..19e0ef7 100644
--- a/test/custom.js
+++ b/test/custom.js
@@ -33,7 +33,13 @@ QosQlobber.prototype._add_values = function (dest, origin)
QosQlobber.prototype._remove_value = function (vals, val)
{
+ if (val === undefined)
+ {
+ return true;
+ }
+
vals.delete(val);
+ return vals.size === 0;
};
QosQlobber.prototype.test_values = function (vals, val)
|