156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson/* This file was generated by SableCC (http://www.sablecc.org/). */ 256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodsonpackage com.google.clearsilver.jsilver.syntax.node; 456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodsonimport com.google.clearsilver.jsilver.syntax.analysis.*; 656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson@SuppressWarnings("nls") 856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodsonpublic final class ADivideExpression extends PExpression 956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson{ 1056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson private PExpression _left_; 1156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson private PExpression _right_; 1256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 1356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public ADivideExpression() 1456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 1556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson // Constructor 1656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 1756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 1856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public ADivideExpression( 1956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson @SuppressWarnings("hiding") PExpression _left_, 2056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson @SuppressWarnings("hiding") PExpression _right_) 2156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 2256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson // Constructor 2356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson setLeft(_left_); 2456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 2556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson setRight(_right_); 2656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 2756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 2856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 2956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson @Override 3056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public Object clone() 3156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 3256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return new ADivideExpression( 3356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson cloneNode(this._left_), 3456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson cloneNode(this._right_)); 3556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 3656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 3756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public void apply(Switch sw) 3856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 3956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson ((Analysis) sw).caseADivideExpression(this); 4056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 4156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 4256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public PExpression getLeft() 4356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 4456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return this._left_; 4556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 4656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 4756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public void setLeft(PExpression node) 4856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 4956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(this._left_ != null) 5056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 5156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson this._left_.parent(null); 5256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 5356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 5456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(node != null) 5556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 5656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(node.parent() != null) 5756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 5856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson node.parent().removeChild(node); 5956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 6056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 6156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson node.parent(this); 6256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 6356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 6456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson this._left_ = node; 6556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 6656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 6756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public PExpression getRight() 6856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 6956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return this._right_; 7056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 7156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 7256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public void setRight(PExpression node) 7356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 7456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(this._right_ != null) 7556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 7656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson this._right_.parent(null); 7756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 7856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 7956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(node != null) 8056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 8156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(node.parent() != null) 8256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 8356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson node.parent().removeChild(node); 8456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 8556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 8656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson node.parent(this); 8756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 8856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 8956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson this._right_ = node; 9056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 9156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 9256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson @Override 9356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson public String toString() 9456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 9556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return "" 9656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson + toString(this._left_) 9756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson + toString(this._right_); 9856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 9956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 10056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson @Override 10156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson void removeChild(@SuppressWarnings("unused") Node child) 10256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 10356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson // Remove child 10456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(this._left_ == child) 10556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 10656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson this._left_ = null; 10756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return; 10856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 10956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 11056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(this._right_ == child) 11156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 11256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson this._right_ = null; 11356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return; 11456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 11556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 11656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson throw new RuntimeException("Not a child."); 11756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 11856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 11956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson @Override 12056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson void replaceChild(@SuppressWarnings("unused") Node oldChild, @SuppressWarnings("unused") Node newChild) 12156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 12256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson // Replace child 12356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(this._left_ == oldChild) 12456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 12556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson setLeft((PExpression) newChild); 12656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return; 12756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 12856ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 12956ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson if(this._right_ == oldChild) 13056ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson { 13156ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson setRight((PExpression) newChild); 13256ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson return; 13356ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 13456ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson 13556ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson throw new RuntimeException("Not a child."); 13656ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson } 13756ed4167b942ec265f9cee70ac4d71d10b3835ceBen Dodson} 138