package clist; abstract class ANode { abstract Object getDat (CLList owner); /** * @return owner. */ abstract CLList setDat (Object dat, CLList owner); /** * @return owner. */ abstract CLList insertClockwise (Object dat, CLList owner); /** * @return owner. */ abstract CLList insertCounterwise (Object dat, CLList owner); abstract Object remClockwise (CLList owner); abstract Object remCounterwise (CLList owner); abstract CLList getClockwiseTail (CLList owner); abstract CLList getCounterwiseTail (CLList owner); abstract Object execute (ICLVisitor algo, CLList stop, Object inp, CLList owner); abstract void setClockwiseOwner (CLList cllist); abstract void setCounterwiseOwner (CLList cllist); }