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 ADigraphGraphType extends PGraphType 009{ 010 private TKwDigraph _kwDigraph_; 011 012 public ADigraphGraphType() 013 { 014 // Constructor 015 } 016 017 public ADigraphGraphType( 018 @SuppressWarnings("hiding") TKwDigraph _kwDigraph_) 019 { 020 // Constructor 021 setKwDigraph(_kwDigraph_); 022 023 } 024 025 @Override 026 public Object clone() 027 { 028 return new ADigraphGraphType( 029 cloneNode(this._kwDigraph_)); 030 } 031 032 public void apply(Switch sw) 033 { 034 ((Analysis) sw).caseADigraphGraphType(this); 035 } 036 037 public TKwDigraph getKwDigraph() 038 { 039 return this._kwDigraph_; 040 } 041 042 public void setKwDigraph(TKwDigraph node) 043 { 044 if(this._kwDigraph_ != null) 045 { 046 this._kwDigraph_.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._kwDigraph_ = node; 060 } 061 062 @Override 063 public String toString() 064 { 065 return "" 066 + toString(this._kwDigraph_); 067 } 068 069 @Override 070 void removeChild(@SuppressWarnings("unused") Node child) 071 { 072 // Remove child 073 if(this._kwDigraph_ == child) 074 { 075 this._kwDigraph_ = 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._kwDigraph_ == oldChild) 087 { 088 setKwDigraph((TKwDigraph) newChild); 089 return; 090 } 091 092 throw new RuntimeException("Not a child."); 093 } 094}