1 2 3 package org.sablecc.sablecc.syntax3.node; 4 5 import java.util.*; 6 import org.sablecc.sablecc.syntax3.analysis.*; 7 8 @SuppressWarnings ("nls") 9 public final class ASimpleTokens extends PTokens 10 { 11 private final LinkedList<PToken> _tokens_ = new LinkedList<PToken>(); 12 13 public ASimpleTokens() 14 { 15 } 17 18 public ASimpleTokens( 19 @SuppressWarnings ("hiding") List<PToken> _tokens_) 20 { 21 setTokens(_tokens_); 23 24 } 25 26 @Override 27 public Object clone() 28 { 29 return new ASimpleTokens( 30 cloneList(this._tokens_)); 31 } 32 33 public void apply(Switch sw) 34 { 35 ((Analysis) sw).caseASimpleTokens(this); 36 } 37 38 public LinkedList<PToken> getTokens() 39 { 40 return this._tokens_; 41 } 42 43 public void setTokens(List<PToken> list) 44 { 45 this._tokens_.clear(); 46 this._tokens_.addAll(list); 47 for(PToken e : list) 48 { 49 if(e.parent() != null) 50 { 51 e.parent().removeChild(e); 52 } 53 54 e.parent(this); 55 } 56 } 57 58 @Override 59 public String toString() 60 { 61 return "" 62 + toString(this._tokens_); 63 } 64 65 @Override 66 void removeChild(@SuppressWarnings ("unused") Node child) 67 { 68 if(this._tokens_.remove(child)) 70 { 71 return; 72 } 73 74 throw new RuntimeException ("Not a child."); 75 } 76 77 @Override 78 void replaceChild(@SuppressWarnings ("unused") Node oldChild, @SuppressWarnings ("unused") Node newChild) 79 { 80 for(ListIterator<PToken> i = this._tokens_.listIterator(); i.hasNext();) 82 { 83 if(i.next() == oldChild) 84 { 85 if(newChild != null) 86 { 87 i.set((PToken) newChild); 88 newChild.parent(this); 89 oldChild.parent(null); 90 return; 91 } 92 93 i.remove(); 94 oldChild.parent(null); 95 return; 96 } 97 } 98 99 throw new RuntimeException ("Not a child."); 100 } 101 } 102 | Popular Tags |