001/* This file was generated by SableCC (http://www.sablecc.org/). */ 002 003package org.anarres.graphviz.parser.node; 004 005import org.anarres.graphviz.parser.analysis.*; 006 007@SuppressWarnings("nls") 008public final class AQuotedAtom extends PAtom 009{ 010 private TStringLiteral _stringLiteral_; 011 012 public AQuotedAtom() 013 { 014 // Constructor 015 } 016 017 public AQuotedAtom( 018 @SuppressWarnings("hiding") TStringLiteral _stringLiteral_) 019 { 020 // Constructor 021 setStringLiteral(_stringLiteral_); 022 023 } 024 025 @Override 026 public Object clone() 027 { 028 return new AQuotedAtom( 029 cloneNode(this._stringLiteral_)); 030 } 031 032 public void apply(Switch sw) 033 { 034 ((Analysis) sw).caseAQuotedAtom(this); 035 } 036 037 public TStringLiteral getStringLiteral() 038 { 039 return this._stringLiteral_; 040 } 041 042 public void setStringLiteral(TStringLiteral node) 043 { 044 if(this._stringLiteral_ != null) 045 { 046 this._stringLiteral_.parent(null); 047 } 048 049 if(node != null) 050 { 051 if(node.parent() != null) 052 { 053 node.parent().removeChild(node); 054 } 055 056 node.parent(this); 057 } 058 059 this._stringLiteral_ = node; 060 } 061 062 @Override 063 public String toString() 064 { 065 return "" 066 + toString(this._stringLiteral_); 067 } 068 069 @Override 070 void removeChild(@SuppressWarnings("unused") Node child) 071 { 072 // Remove child 073 if(this._stringLiteral_ == child) 074 { 075 this._stringLiteral_ = null; 076 return; 077 } 078 079 throw new RuntimeException("Not a child."); 080 } 081 082 @Override 083 void replaceChild(@SuppressWarnings("unused") Node oldChild, @SuppressWarnings("unused") Node newChild) 084 { 085 // Replace child 086 if(this._stringLiteral_ == oldChild) 087 { 088 setStringLiteral((TStringLiteral) newChild); 089 return; 090 } 091 092 throw new RuntimeException("Not a child."); 093 } 094}