48 49 boolean isEmptyOrComment() { 50 return emptyOrCommentPattern.matcher(text).matches(); 51 } 52 53 boolean isInfo() { 54 return infoPattern.matcher(text).matches(); 55 } 56 57 boolean hasContinuation() { 58 return (next != null) && text.endsWith("\\"); 59 } 60 61 Line insertAfter(String text) { 62 Line l = new Line(text); 63 insertAfter(l); 64 return l; 65 } 66 67 void insertAfter(Line l) { 68 assert prev == null && next == null; 69 l.prev = this; 70 l.next = next; 71 if (next == null) 72 lastLine = l; 73 else 74 next.prev = l; 75 next = l; 76 } 77 78 Line insertBefore(String text) { 79 Line l = new Line(text); 80 insertBefore(l); 81 return l; 82 } 83 84 void insertBefore(Line l) { 85 assert prev == null && next == null; 86 l.prev = prev; 87 l.next = this; 88 if (prev == null) 89 firstLine = l; 90 else 91 prev.next = l; 92 prev = l; 93 } 94 95 void remove() { 96 if (prev == null) 97 firstLine = next; 98 else 99 prev.next = next; 100 if (next == null) 101 lastLine = prev; 102 else 103 next.prev = prev; 104 prev = null; 105 next = null; | 48 49 boolean isEmptyOrComment() { 50 return emptyOrCommentPattern.matcher(text).matches(); 51 } 52 53 boolean isInfo() { 54 return infoPattern.matcher(text).matches(); 55 } 56 57 boolean hasContinuation() { 58 return (next != null) && text.endsWith("\\"); 59 } 60 61 Line insertAfter(String text) { 62 Line l = new Line(text); 63 insertAfter(l); 64 return l; 65 } 66 67 void insertAfter(Line l) { 68 assert l.prev == null && l.next == null; 69 l.prev = this; 70 l.next = next; 71 if (next == null) 72 lastLine = l; 73 else 74 next.prev = l; 75 next = l; 76 } 77 78 Line insertBefore(String text) { 79 Line l = new Line(text); 80 insertBefore(l); 81 return l; 82 } 83 84 void insertBefore(Line l) { 85 assert l.prev == null && l.next == null; 86 l.prev = prev; 87 l.next = this; 88 if (prev == null) 89 firstLine = l; 90 else 91 prev.next = l; 92 prev = l; 93 } 94 95 void remove() { 96 if (prev == null) 97 firstLine = next; 98 else 99 prev.next = next; 100 if (next == null) 101 lastLine = prev; 102 else 103 next.prev = prev; 104 prev = null; 105 next = null; |