00001 package edu.ksu.cis.bandera.specification.predicate.node;
00002
00003
00004
00005 import edu.ksu.cis.bandera.specification.predicate.analysis.*;
00006
00007 public final class X1PPropositionDefinition extends XPPropositionDefinition
00008 {
00009 private XPPropositionDefinition _xPPropositionDefinition_;
00010 private PPropositionDefinition _pPropositionDefinition_;
00011
00012 public X1PPropositionDefinition()
00013 {
00014 }
00015 public X1PPropositionDefinition(
00016 XPPropositionDefinition _xPPropositionDefinition_,
00017 PPropositionDefinition _pPropositionDefinition_)
00018 {
00019 setXPPropositionDefinition(_xPPropositionDefinition_);
00020 setPPropositionDefinition(_pPropositionDefinition_);
00021 }
00022 public void apply(Switch sw)
00023 {
00024 throw new RuntimeException("Switch not supported.");
00025 }
00026 public Object clone()
00027 {
00028 throw new RuntimeException("Unsupported Operation");
00029 }
00030 public PPropositionDefinition getPPropositionDefinition()
00031 {
00032 return _pPropositionDefinition_;
00033 }
00034 public XPPropositionDefinition getXPPropositionDefinition()
00035 {
00036 return _xPPropositionDefinition_;
00037 }
00038 void removeChild(Node child)
00039 {
00040 if(_xPPropositionDefinition_ == child)
00041 {
00042 _xPPropositionDefinition_ = null;
00043 }
00044
00045 if(_pPropositionDefinition_ == child)
00046 {
00047 _pPropositionDefinition_ = null;
00048 }
00049 }
00050 void replaceChild(Node oldChild, Node newChild)
00051 {
00052 }
00053 public void setPPropositionDefinition(PPropositionDefinition node)
00054 {
00055 if(_pPropositionDefinition_ != null)
00056 {
00057 _pPropositionDefinition_.parent(null);
00058 }
00059
00060 if(node != null)
00061 {
00062 if(node.parent() != null)
00063 {
00064 node.parent().removeChild(node);
00065 }
00066
00067 node.parent(this);
00068 }
00069
00070 _pPropositionDefinition_ = node;
00071 }
00072 public void setXPPropositionDefinition(XPPropositionDefinition node)
00073 {
00074 if(_xPPropositionDefinition_ != null)
00075 {
00076 _xPPropositionDefinition_.parent(null);
00077 }
00078
00079 if(node != null)
00080 {
00081 if(node.parent() != null)
00082 {
00083 node.parent().removeChild(node);
00084 }
00085
00086 node.parent(this);
00087 }
00088
00089 _xPPropositionDefinition_ = node;
00090 }
00091 public String toString()
00092 {
00093 return "" +
00094 toString(_xPPropositionDefinition_) +
00095 toString(_pPropositionDefinition_);
00096 }
00097 }