1 | (function() {
|
2 | var LinkedList;
|
3 |
|
4 | module.exports = LinkedList = (function() {
|
5 |
|
6 | function LinkedList() {}
|
7 |
|
8 | |
9 |
|
10 |
|
11 | LinkedList.prototype.getNextSibling = function() {
|
12 | return this._nextSibling;
|
13 | };
|
14 |
|
15 | |
16 |
|
17 |
|
18 | LinkedList.prototype.addNextSibling = function(sibling, replNext) {
|
19 | if (!!this._nextSibling) this._nexSibling._prevSibling = sibling;
|
20 | sibling._prevSibling = this;
|
21 | if (!replNext) sibling._nextSibling = this._nextSibling;
|
22 | return this._nextSibling = sibling;
|
23 | };
|
24 |
|
25 | |
26 |
|
27 |
|
28 | LinkedList.prototype.getPrevSibling = function() {
|
29 | return this._prevSibling;
|
30 | };
|
31 |
|
32 | |
33 |
|
34 |
|
35 | LinkedList.prototype.addPrevSibling = function(sibling, replPrev) {
|
36 | if (!!this._prevSibling) this._prevSibling._nextSibling = sibling;
|
37 | sibling._nextSibling = this;
|
38 | if (!replPrev) sibling._prevSibling = this._prevSibling;
|
39 | return this._prevSibling = sibling;
|
40 | };
|
41 |
|
42 | |
43 |
|
44 |
|
45 | LinkedList.prototype.getFirstSibling = function() {
|
46 | var first;
|
47 | first = this;
|
48 | while (!!first._prevSibling) {
|
49 | first = first._prevSibling;
|
50 | }
|
51 | return first;
|
52 | };
|
53 |
|
54 | |
55 |
|
56 |
|
57 | LinkedList.prototype.getLastSibling = function() {
|
58 | var last;
|
59 | last = this;
|
60 | while (!!last._nextSibling) {
|
61 | last = last._nextSibling;
|
62 | }
|
63 | return last;
|
64 | };
|
65 |
|
66 | return LinkedList;
|
67 |
|
68 | })();
|
69 |
|
70 | }).call(this);
|