home *** CD-ROM | disk | FTP | other *** search
/ Global Amiga Experience / globalamigaexperience.iso / compressed / development / clusterdemo.dms / clusterdemo.adf / Modules.lha / modules / txt / OTrees.def < prev    next >
Text File  |  1994-05-25  |  1KB  |  46 lines

  1. |##########|
  2. |#MAGIC   #|CKOLFLGB
  3. |#PROJECT #|""
  4. |#PATHS   #|"StdProject"
  5. |#FLAGS   #|xx---x--x---xxx-----------------
  6. |#USERSW  #|--------------------------------
  7. |#USERMASK#|--------------------------------
  8. |#SWITCHES#|x----xxxxx-xx---
  9. |##########|
  10. DEFINITION MODULE OTrees;
  11.  
  12.   DEFINITION MODULE StdTrees(Tree : POINTER TO TreeObj);
  13.  
  14.     IMPORT OLists;
  15.  
  16.     DEFINITION MODULE TreeList = OLists.BiLists(Tree);
  17.  
  18.     FROM TreeList IMPORT Condition,ApplyProc;
  19.  
  20.   TYPE
  21.     TreeObj    = OBJECT OF TreeList.Node,
  22.                            TreeList.List;
  23.                    parent : Tree;
  24.  
  25.                    CONSTRUCTOR Create;
  26.                    DESTRUCTOR Delete;
  27.  
  28.                    METHOD InsertFirst(n : Tree);
  29.                    METHOD InsertLast(n : Tree);
  30.                    METHOD InsertAfter(n,after : Tree);
  31.                    METHOD InsertBefore(n,before : Tree);
  32.  
  33.                    METHOD ApplyDepthFirst(before,between,after : ApplyProc := NIL);
  34.                    METHOD ApplyBreadthFirst(app : ApplyProc);
  35.  
  36.                    |METHOD FindDepthFirst(if : Condition;from : Tree := NIL):Tree;
  37.                    |METHOD FindBreadthFirst(if : Condition;from : Tree := NIL):Tree;
  38.  
  39.                    METHOD Clone():Tree;
  40.                  END;
  41.  
  42.   END StdTrees;
  43.  
  44. END OTrees.
  45.  
  46.