6
6
* [ SymbolTree] ( #exp_module_symbol-tree--SymbolTree ) ⏏
7
7
* [ new SymbolTree([ description] )] ( #new_module_symbol-tree--SymbolTree_new )
8
8
* [ .initialize(object)] ( #module_symbol-tree--SymbolTree+initialize ) ⇒ <code >Object</code >
9
- * [ .isEmpty (object)] ( #module_symbol-tree--SymbolTree+isEmpty ) ⇒ <code >Boolean</code >
10
- * [ .first (object)] ( #module_symbol-tree--SymbolTree+first ) ⇒ <code >Object</code >
11
- * [ .last (object)] ( #module_symbol-tree--SymbolTree+last ) ⇒ <code >Object</code >
12
- * [ .prev (object)] ( #module_symbol-tree--SymbolTree+prev ) ⇒ <code >Object</code >
13
- * [ .next (object)] ( #module_symbol-tree--SymbolTree+next ) ⇒ <code >Object</code >
9
+ * [ .hasChildren (object)] ( #module_symbol-tree--SymbolTree+hasChildren ) ⇒ <code >Boolean</code >
10
+ * [ .firstChild (object)] ( #module_symbol-tree--SymbolTree+firstChild ) ⇒ <code >Object</code >
11
+ * [ .lastChild (object)] ( #module_symbol-tree--SymbolTree+lastChild ) ⇒ <code >Object</code >
12
+ * [ .previousSibling (object)] ( #module_symbol-tree--SymbolTree+previousSibling ) ⇒ <code >Object</code >
13
+ * [ .nextSibling (object)] ( #module_symbol-tree--SymbolTree+nextSibling ) ⇒ <code >Object</code >
14
14
* [ .parent(object)] ( #module_symbol-tree--SymbolTree+parent ) ⇒ <code >Object</code >
15
15
* [ .lastInclusiveDescendant(object)] ( #module_symbol-tree--SymbolTree+lastInclusiveDescendant ) ⇒ <code >Object</code >
16
- * [ .preceding(object, [ treeRoot ] )] ( #module_symbol-tree--SymbolTree+preceding ) ⇒ <code >Object</code >
17
- * [ .following(object, [ treeRoot ] , [ skipChildren ] )] ( #module_symbol-tree--SymbolTree+following ) ⇒ <code >Object</code >
18
- * [ .childrenToArray(parent, [ array ] , [ filter ] , [ thisArg ] )] ( #module_symbol-tree--SymbolTree+childrenToArray ) ⇒ <code >Array.< ; Object> ; </code >
19
- * [ .ancestorsToArray(object, [ array ] , [ filter ] , [ thisArg ] )] ( #module_symbol-tree--SymbolTree+ancestorsToArray ) ⇒ <code >Array.< ; Object> ; </code >
20
- * [ .treeToArray(root, [ array ] , [ filter ] , [ thisArg ] )] ( #module_symbol-tree--SymbolTree+treeToArray ) ⇒ <code >Array.< ; Object> ; </code >
21
- * [ .childrenIterator(parent, [ reverse ] )] ( #module_symbol-tree--SymbolTree+childrenIterator ) ⇒ <code >Object</code >
16
+ * [ .preceding(object, [ options ] )] ( #module_symbol-tree--SymbolTree+preceding ) ⇒ <code >Object</code >
17
+ * [ .following(object, [ options ] )] ( #module_symbol-tree--SymbolTree+following ) ⇒ <code >Object</code >
18
+ * [ .childrenToArray(parent, [ options ] )] ( #module_symbol-tree--SymbolTree+childrenToArray ) ⇒ <code >Array.< ; Object> ; </code >
19
+ * [ .ancestorsToArray(object, [ options ] )] ( #module_symbol-tree--SymbolTree+ancestorsToArray ) ⇒ <code >Array.< ; Object> ; </code >
20
+ * [ .treeToArray(root, [ options ] )] ( #module_symbol-tree--SymbolTree+treeToArray ) ⇒ <code >Array.< ; Object> ; </code >
21
+ * [ .childrenIterator(parent, [ options ] )] ( #module_symbol-tree--SymbolTree+childrenIterator ) ⇒ <code >Object</code >
22
22
* [ .prevSiblingsIterator(object)] ( #module_symbol-tree--SymbolTree+prevSiblingsIterator ) ⇒ <code >Object</code >
23
23
* [ .nextSiblingsIterator(object)] ( #module_symbol-tree--SymbolTree+nextSiblingsIterator ) ⇒ <code >Object</code >
24
24
* [ .ancestorsIterator(object)] ( #module_symbol-tree--SymbolTree+ancestorsIterator ) ⇒ <code >Object</code >
25
- * [ .treeIterator(root, [ reverse ] )] ( #module_symbol-tree--SymbolTree+treeIterator ) ⇒ <code >Object</code >
25
+ * [ .treeIterator(root, options )] ( #module_symbol-tree--SymbolTree+treeIterator ) ⇒ <code >Object</code >
26
26
* [ .index(child)] ( #module_symbol-tree--SymbolTree+index ) ⇒ <code >Number</code >
27
27
* [ .childrenCount(parent)] ( #module_symbol-tree--SymbolTree+childrenCount ) ⇒ <code >Number</code >
28
28
* [ .compareTreePosition(left, right)] ( #module_symbol-tree--SymbolTree+compareTreePosition ) ⇒ <code >Number</code >
29
29
* [ .remove(removeObject)] ( #module_symbol-tree--SymbolTree+remove ) ⇒ <code >Object</code >
30
- * [ .insertBefore(newObject, referenceObject )] ( #module_symbol-tree--SymbolTree+insertBefore ) ⇒ <code >Object</code >
31
- * [ .insertAfter(newObject, referenceObject )] ( #module_symbol-tree--SymbolTree+insertAfter ) ⇒ <code >Object</code >
32
- * [ .insertFirst(newObject, referenceObject )] ( #module_symbol-tree--SymbolTree+insertFirst ) ⇒ <code >Object</code >
33
- * [ .insertLast(newObject, referenceObject )] ( #module_symbol-tree--SymbolTree+insertLast ) ⇒ <code >Object</code >
30
+ * [ .insertBefore(referenceObject, newObject )] ( #module_symbol-tree--SymbolTree+insertBefore ) ⇒ <code >Object</code >
31
+ * [ .insertAfter(referenceObject, newObject )] ( #module_symbol-tree--SymbolTree+insertAfter ) ⇒ <code >Object</code >
32
+ * [ .prependChild(referenceObject, newObject )] ( #module_symbol-tree--SymbolTree+prependChild ) ⇒ <code >Object</code >
33
+ * [ .appendChild(referenceObject, newObject )] ( #module_symbol-tree--SymbolTree+appendChild ) ⇒ <code >Object</code >
34
34
35
35
<a name =" exp_module_symbol-tree--SymbolTree " ></a >
36
36
### SymbolTree ⏏
@@ -57,9 +57,9 @@ freeze your object.
57
57
| --- | --- |
58
58
| object | <code >Object</code > |
59
59
60
- <a name =" module_symbol-tree--SymbolTree+isEmpty " ></a >
61
- #### symbolTree.isEmpty (object) ⇒ <code >Boolean</code >
62
- Returns false if the object has any children. Otherwise it returns true .
60
+ <a name =" module_symbol-tree--SymbolTree+hasChildren " ></a >
61
+ #### symbolTree.hasChildren (object) ⇒ <code >Boolean</code >
62
+ Returns ` true ` if the object has any children. Otherwise it returns ` false ` .
63
63
64
64
` O(1) `
65
65
@@ -69,8 +69,8 @@ Returns false if the object has any children. Otherwise it returns true.
69
69
| --- | --- |
70
70
| object | <code >Object</code > |
71
71
72
- <a name =" module_symbol-tree--SymbolTree+first " ></a >
73
- #### symbolTree.first (object) ⇒ <code >Object</code >
72
+ <a name =" module_symbol-tree--SymbolTree+firstChild " ></a >
73
+ #### symbolTree.firstChild (object) ⇒ <code >Object</code >
74
74
Return the first child of the given object.
75
75
76
76
` O(1) `
@@ -81,8 +81,8 @@ Return the first child of the given object.
81
81
| --- | --- |
82
82
| object | <code >Object</code > |
83
83
84
- <a name =" module_symbol-tree--SymbolTree+last " ></a >
85
- #### symbolTree.last (object) ⇒ <code >Object</code >
84
+ <a name =" module_symbol-tree--SymbolTree+lastChild " ></a >
85
+ #### symbolTree.lastChild (object) ⇒ <code >Object</code >
86
86
Return the last child of the given object.
87
87
88
88
` O(1) `
@@ -93,8 +93,8 @@ Return the last child of the given object.
93
93
| --- | --- |
94
94
| object | <code >Object</code > |
95
95
96
- <a name =" module_symbol-tree--SymbolTree+prev " ></a >
97
- #### symbolTree.prev (object) ⇒ <code >Object</code >
96
+ <a name =" module_symbol-tree--SymbolTree+previousSibling " ></a >
97
+ #### symbolTree.previousSibling (object) ⇒ <code >Object</code >
98
98
Return the previous sibling of the given object.
99
99
100
100
` O(1) `
@@ -105,9 +105,9 @@ Return the previous sibling of the given object.
105
105
| --- | --- |
106
106
| object | <code >Object</code > |
107
107
108
- <a name =" module_symbol-tree--SymbolTree+next " ></a >
109
- #### symbolTree.next (object) ⇒ <code >Object</code >
110
- Return the next sibling of the given object.
108
+ <a name =" module_symbol-tree--SymbolTree+nextSibling " ></a >
109
+ #### symbolTree.nextSibling (object) ⇒ <code >Object</code >
110
+ Return the nextSibling sibling of the given object.
111
111
112
112
` O(1) `
113
113
@@ -142,7 +142,7 @@ Find the inclusive descendant that is last in tree order of the given object.
142
142
| object | <code >Object</code > |
143
143
144
144
<a name =" module_symbol-tree--SymbolTree+preceding " ></a >
145
- #### symbolTree.preceding(object, [ treeRoot ] ) ⇒ <code >Object</code >
145
+ #### symbolTree.preceding(object, [ options ] ) ⇒ <code >Object</code >
146
146
Find the preceding object (A) of the given object (B).
147
147
An object A is preceding an object B if A and B are in the same tree
148
148
and A comes before B in tree order.
@@ -154,10 +154,11 @@ and A comes before B in tree order.
154
154
| Param | Type | Description |
155
155
| --- | --- | --- |
156
156
| object | <code >Object</code > | |
157
- | [ treeRoot] | <code >Object</code > | If set, ` treeRoot ` must be an inclusive ancestor of the return value (or else null is returned). This check _ assumes_ that ` root ` is also an inclusive ancestor of the given ` node ` |
157
+ | [ options] | <code >Object</code > | |
158
+ | [ options.root] | <code >Object</code > | If set, ` root ` must be an inclusive ancestor of the return value (or else null is returned). This check _ assumes_ that ` root ` is also an inclusive ancestor of the given ` node ` |
158
159
159
160
<a name =" module_symbol-tree--SymbolTree+following " ></a >
160
- #### symbolTree.following(object, [ treeRoot ] , [ skipChildren ] ) ⇒ <code >Object</code >
161
+ #### symbolTree.following(object, [ options ] ) ⇒ <code >Object</code >
161
162
Find the following object (A) of the given object (B).
162
163
An object A is following an object B if A and B are in the same tree
163
164
and A comes after B in tree order.
@@ -169,11 +170,12 @@ and A comes after B in tree order.
169
170
| Param | Type | Default | Description |
170
171
| --- | --- | --- | --- |
171
172
| object | <code >Object</code > | | |
172
- | [ treeRoot] | <code >Object</code > | | If set, ` treeRoot ` must be an inclusive ancestor of the return value (or else null is returned). This check _ assumes_ that ` root ` is also an inclusive ancestor of the given ` node ` |
173
- | [ skipChildren] | <code >Boolean</code > | <code >false</code > | If set, ignore the childen of ` object ` |
173
+ | [ options] | <code >Object</code > | | |
174
+ | [ options.root] | <code >Object</code > | | If set, ` root ` must be an inclusive ancestor of the return value (or else null is returned). This check _ assumes_ that ` root ` is also an inclusive ancestor of the given ` node ` |
175
+ | [ options.skipChildren] | <code >Boolean</code > | <code >false</code > | If set, ignore the children of ` object ` |
174
176
175
177
<a name =" module_symbol-tree--SymbolTree+childrenToArray " ></a >
176
- #### symbolTree.childrenToArray(parent, [ array ] , [ filter ] , [ thisArg ] ) ⇒ <code >Array.< ; Object> ; </code >
178
+ #### symbolTree.childrenToArray(parent, [ options ] ) ⇒ <code >Array.< ; Object> ; </code >
177
179
Append all children of the given object to an array.
178
180
179
181
` O(n) `
@@ -183,12 +185,13 @@ Append all children of the given object to an array.
183
185
| Param | Type | Default | Description |
184
186
| --- | --- | --- | --- |
185
187
| parent | <code >Object</code > | | |
186
- | [ array] | <code >Array.< ; Object> ; </code > | <code >[ ] </code > | |
187
- | [ filter] | <code >function</code > | | Function to test each object before it is added to the array. Invoked with arguments (object). Should return ` true ` if an object is to be included. |
188
- | [ thisArg] | <code >\* </code > | | Value to use as ` this ` when executing ` filter ` . |
188
+ | [ options] | <code >Object</code > | | |
189
+ | [ options.array] | <code >Array.< ; Object> ; </code > | <code >[ ] </code > | |
190
+ | [ options.filter] | <code >function</code > | | Function to test each object before it is added to the array. Invoked with arguments (object). Should return ` true ` if an object is to be included. |
191
+ | [ options.thisArg] | <code >\* </code > | | Value to use as ` this ` when executing ` filter ` . |
189
192
190
193
<a name =" module_symbol-tree--SymbolTree+ancestorsToArray " ></a >
191
- #### symbolTree.ancestorsToArray(object, [ array ] , [ filter ] , [ thisArg ] ) ⇒ <code >Array.< ; Object> ; </code >
194
+ #### symbolTree.ancestorsToArray(object, [ options ] ) ⇒ <code >Array.< ; Object> ; </code >
192
195
Append all inclusive ancestors of the given object to an array.
193
196
194
197
` O(n) `
@@ -198,12 +201,13 @@ Append all inclusive ancestors of the given object to an array.
198
201
| Param | Type | Default | Description |
199
202
| --- | --- | --- | --- |
200
203
| object | <code >Object</code > | | |
201
- | [ array] | <code >Array.< ; Object> ; </code > | <code >[ ] </code > | |
202
- | [ filter] | <code >function</code > | | Function to test each object before it is added to the array. Invoked with arguments (object). Should return ` true ` if an object is to be included. |
203
- | [ thisArg] | <code >\* </code > | | Value to use as ` this ` when executing ` filter ` . |
204
+ | [ options] | <code >Object</code > | | |
205
+ | [ options.array] | <code >Array.< ; Object> ; </code > | <code >[ ] </code > | |
206
+ | [ options.filter] | <code >function</code > | | Function to test each object before it is added to the array. Invoked with arguments (object). Should return ` true ` if an object is to be included. |
207
+ | [ options.thisArg] | <code >\* </code > | | Value to use as ` this ` when executing ` filter ` . |
204
208
205
209
<a name =" module_symbol-tree--SymbolTree+treeToArray " ></a >
206
- #### symbolTree.treeToArray(root, [ array ] , [ filter ] , [ thisArg ] ) ⇒ <code >Array.< ; Object> ; </code >
210
+ #### symbolTree.treeToArray(root, [ options ] ) ⇒ <code >Array.< ; Object> ; </code >
207
211
Append all descendants of the given object to an array (in tree order).
208
212
209
213
` O(n) `
@@ -213,12 +217,13 @@ Append all descendants of the given object to an array (in tree order).
213
217
| Param | Type | Default | Description |
214
218
| --- | --- | --- | --- |
215
219
| root | <code >Object</code > | | |
216
- | [ array] | <code >Array.< ; Object> ; </code > | <code >[ ] </code > | |
217
- | [ filter] | <code >function</code > | | Function to test each object before it is added to the array. Invoked with arguments (object). Should return ` true ` if an object is to be included. |
218
- | [ thisArg] | <code >\* </code > | | Value to use as ` this ` when executing ` filter ` . |
220
+ | [ options] | <code >Object</code > | | |
221
+ | [ options.array] | <code >Array.< ; Object> ; </code > | <code >[ ] </code > | |
222
+ | [ options.filter] | <code >function</code > | | Function to test each object before it is added to the array. Invoked with arguments (object). Should return ` true ` if an object is to be included. |
223
+ | [ options.thisArg] | <code >\* </code > | | Value to use as ` this ` when executing ` filter ` . |
219
224
220
225
<a name =" module_symbol-tree--SymbolTree+childrenIterator " ></a >
221
- #### symbolTree.childrenIterator(parent, [ reverse ] ) ⇒ <code >Object</code >
226
+ #### symbolTree.childrenIterator(parent, [ options ] ) ⇒ <code >Object</code >
222
227
Iterate over all children of the given object
223
228
224
229
` O(1) ` for a single iteration
@@ -229,7 +234,8 @@ Iterate over all children of the given object
229
234
| Param | Type | Default |
230
235
| --- | --- | --- |
231
236
| parent | <code >Object</code > | |
232
- | [ reverse] | <code >Boolean</code > | <code >false</code > |
237
+ | [ options] | <code >Object</code > | |
238
+ | [ options.reverse] | <code >Boolean</code > | <code >false</code > |
233
239
234
240
<a name =" module_symbol-tree--SymbolTree+prevSiblingsIterator " ></a >
235
241
#### symbolTree.prevSiblingsIterator(object) ⇒ <code >Object</code >
@@ -271,7 +277,7 @@ Iterate over all inclusive ancestors of the given object
271
277
| object | <code >Object</code > |
272
278
273
279
<a name =" module_symbol-tree--SymbolTree+treeIterator " ></a >
274
- #### symbolTree.treeIterator(root, [ reverse ] ) ⇒ <code >Object</code >
280
+ #### symbolTree.treeIterator(root, options ) ⇒ <code >Object</code >
275
281
Iterate over all descendants of the given object (in tree order).
276
282
277
283
` O(n) ` for the entire iteration<br >
@@ -283,7 +289,8 @@ Iterate over all descendants of the given object (in tree order).
283
289
| Param | Type | Default |
284
290
| --- | --- | --- |
285
291
| root | <code >Object</code > | |
286
- | [ reverse] | <code >Boolean</code > | <code >false</code > |
292
+ | options | <code >Object</code > | |
293
+ | [ options.reverse] | <code >Boolean</code > | <code >false</code > |
287
294
288
295
<a name =" module_symbol-tree--SymbolTree+index " ></a >
289
296
#### symbolTree.index(child) ⇒ <code >Number</code >
@@ -351,7 +358,7 @@ Has no effect if already removed.
351
358
| removeObject | <code >Object</code > |
352
359
353
360
<a name =" module_symbol-tree--SymbolTree+insertBefore " ></a >
354
- #### symbolTree.insertBefore(newObject, referenceObject ) ⇒ <code >Object</code >
361
+ #### symbolTree.insertBefore(referenceObject, newObject ) ⇒ <code >Object</code >
355
362
Insert the given object before the reference object.
356
363
` newObject ` is now the previous sibling of ` referenceObject ` .
357
364
@@ -366,11 +373,11 @@ Insert the given object before the reference object.
366
373
367
374
| Param | Type |
368
375
| --- | --- |
369
- | newObject | <code >Object</code > |
370
376
| referenceObject | <code >Object</code > |
377
+ | newObject | <code >Object</code > |
371
378
372
379
<a name =" module_symbol-tree--SymbolTree+insertAfter " ></a >
373
- #### symbolTree.insertAfter(newObject, referenceObject ) ⇒ <code >Object</code >
380
+ #### symbolTree.insertAfter(referenceObject, newObject ) ⇒ <code >Object</code >
374
381
Insert the given object after the reference object.
375
382
` newObject ` is now the next sibling of ` referenceObject ` .
376
383
@@ -385,11 +392,11 @@ Insert the given object after the reference object.
385
392
386
393
| Param | Type |
387
394
| --- | --- |
388
- | newObject | <code >Object</code > |
389
395
| referenceObject | <code >Object</code > |
396
+ | newObject | <code >Object</code > |
390
397
391
- <a name =" module_symbol-tree--SymbolTree+insertFirst " ></a >
392
- #### symbolTree.insertFirst(newObject, referenceObject ) ⇒ <code >Object</code >
398
+ <a name =" module_symbol-tree--SymbolTree+prependChild " ></a >
399
+ #### symbolTree.prependChild(referenceObject, newObject ) ⇒ <code >Object</code >
393
400
Insert the given object as the first child of the given reference object.
394
401
` newObject ` is now the first child of ` referenceObject ` .
395
402
@@ -404,11 +411,11 @@ Insert the given object as the first child of the given reference object.
404
411
405
412
| Param | Type |
406
413
| --- | --- |
407
- | newObject | <code >Object</code > |
408
414
| referenceObject | <code >Object</code > |
415
+ | newObject | <code >Object</code > |
409
416
410
- <a name =" module_symbol-tree--SymbolTree+insertLast " ></a >
411
- #### symbolTree.insertLast(newObject, referenceObject ) ⇒ <code >Object</code >
417
+ <a name =" module_symbol-tree--SymbolTree+appendChild " ></a >
418
+ #### symbolTree.appendChild(referenceObject, newObject ) ⇒ <code >Object</code >
412
419
Insert the given object as the last child of the given reference object.
413
420
` newObject ` is now the last child of ` referenceObject ` .
414
421
@@ -423,6 +430,6 @@ Insert the given object as the last child of the given reference object.
423
430
424
431
| Param | Type |
425
432
| --- | --- |
426
- | newObject | <code >Object</code > |
427
433
| referenceObject | <code >Object</code > |
434
+ | newObject | <code >Object</code > |
428
435
0 commit comments