DIRECTORY TextFind USING [Direction, Target, Subs], Tioga USING [Node, Location, Event]; TiogaFind: CEDAR DEFINITIONS ~ BEGIN Node: TYPE ~ Tioga.Node; Location: TYPE ~ Tioga.Location; Event: TYPE ~ Tioga.Event; Direction: TYPE ~ TextFind.Direction; -- {forward, backward} Target: TYPE ~ TextFind.Target; Subs: TYPE ~ TextFind.Subs; TargetFromNode: PROC [node: Node, start: INT ฌ 0, len: INT ฌ INT.LAST, pattern: BOOL ฌ FALSE] RETURNS [Target]; Match: TYPE ~ {any, word, def, all}; Search: PROC [direction: Direction, loc1, loc2: Location, target: Target ฌ NIL, case: BOOL ฌ TRUE, match: Match ฌ any, checkLooks: BOOL ฌ FALSE, looksExact: BOOL ฌ FALSE, checkComment: BOOL ฌ FALSE, comment: BOOL ฌ FALSE, checkFormat: BOOL ฌ FALSE, format: ATOM ฌ NIL, checkStyle: BOOL ฌ FALSE, style: ATOM ฌ NIL, styleProc: PROC [Node] RETURNS [ATOM] ฌ NIL, interrupt: REF BOOL ฌ NIL] RETURNS [node: Node ฌ NIL, matchStart, matchEnd: INT ฌ 0, subs: Subs ฌ NIL]; LiteralSearch: PROC [direction: Direction, loc1, loc2: Location, target: Node ฌ NIL, targetStart: INT ฌ 0, targetLen: INT ฌ INT.LAST, case: BOOL ฌ TRUE, match: Match ฌ any, interrupt: REF BOOL ฌ NIL] RETURNS [node: Node ฌ NIL, matchStart, matchEnd: INT ฌ 0]; Replace: PROC [dest: Node, destStart: INT ฌ 0, destLen: INT ฌ INT.LAST, source: Node, sourceStart: INT ฌ 0, sourceLen: INT ฌ INT.LAST, pattern: BOOL ฌ FALSE, subs: Subs ฌ NIL, event: Event ฌ NIL] RETURNS [resultStart, resultLen: INT]; ApplyProc: TYPE ~ PROC [node: Node, matchStart, matchEnd: INT, subs: Subs] RETURNS [continue, bumpCount: BOOL ฌ FALSE, from, delta: INT ฌ 0]; Apply: PROC [proc: ApplyProc, loc1, loc2: Location, target: Target ฌ NIL, case: BOOL ฌ TRUE, match: Match ฌ any, checkLooks: BOOL ฌ FALSE, looksExact: BOOL ฌ FALSE, checkComment: BOOL ฌ FALSE, comment: BOOL ฌ FALSE, checkFormat: BOOL ฌ FALSE, format: ATOM ฌ NIL, checkStyle: BOOL ฌ FALSE, style: ATOM ฌ NIL, styleProc: PROC [Node] RETURNS [ATOM] ฌ NIL, interrupt: REF BOOL ฌ NIL] RETURNS [count: INT]; END. ุ TiogaFind.mesa Copyright ำ 1991, 1992 by Xerox Corporation. All rights reserved. Doug Wyatt, March 16, 1992 2:15 pm PST search in direction through [loc1..loc2) search in direction through [loc1..loc2) ส๕–(cedarcode) style•NewlineDelimiter ™codešœ™Kšœ ฯeœ7™BK™&—K˜šฯk ˜ Kšœ žœ˜)Kšœžœ˜$—K˜Kšฯn œžœž œž˜$K˜Kšœžœ˜Kšœ žœ˜ šœžœ˜K™—Kšœ žœฯc˜