(FILECREATED " 9-May-86 18:22:38" {QV}<NOTECARDS>1.3K>KIRKPATCH001.;5 1929   

      changes to:  (VARS KIRKPATCH001COMS garb))


(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.)

(PRETTYCOMPRINT KIRKPATCH001COMS)

(RPAQQ KIRKPATCH001COMS ((* * Code using FSM path stuff for operating on structures. Used to be 
			      called by NC.CollectCards now commented out.)
			   (FNS NC.EnumerateTSIntoCards NC.MakePredFromTraversalSpec)))
(* * Code using FSM path stuff for operating on structures. Used to be called by 
NC.CollectCards now commented out.)

(DEFINEQ

(NC.EnumerateTSIntoCards
  (LAMBDA (TraversalSpec FromCard)                           (* kirk: "25-Mar-86 15:57")

          (* * converts from a simple traversal spec to FSM path to enumerate cards. Perhaps TraversalSpec should instead be 
	  a textstring for NCPathParse to call.)


    (LET (node FSM)
         (SETQ node (create NCPathFSMNode
				Predicate ← (NC.MakePredFromTraversalSpec TraversalSpec)))
         (replace (NCPathFSMNode NextNodes) of node with (LIST NIL node))
         (SETQ FSM (create NCPathFSM
			       InitialState ← node
			       CurrentState ← node))
         (NCPath.GetCardPathListsFromPathCollection (NCPath.FSM.PathCollect FSM FromCard)))))

(NC.MakePredFromTraversalSpec
  (LAMBDA (TraversalSpec)                                    (* kirk: " 9-Apr-86 15:32")

          (* * Make a path node predicate from a stylesheet traversal spec.)


    (LET ((TypeList (fetch (TRAVERSALSPECS LinkTypes) of TraversalSpec)))
         (BQUOTE (LAMBDA (Item)
		     (\, (CONS (QUOTE OR)
				 (for Type in TypeList collect (LIST (
NCPathParse.CreatePredicateForm Type T)
									     (QUOTE Item))))))))))
)
(PUTPROPS KIRKPATCH001 COPYRIGHT ("Xerox Corporation" 1986))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (585 1846 (NC.EnumerateTSIntoCards 595 . 1335) (NC.MakePredFromTraversalSpec 1337 . 1844
)))))
STOP