DIRECTORY Feedback, IO, Rope, SimpleFeedback; SimpleFeedbackImpl: CEDAR PROGRAM IMPORTS Feedback EXPORTS SimpleFeedback = BEGIN MsgType: TYPE = SimpleFeedback.MsgType; MsgClass: TYPE ~ SimpleFeedback.MsgClass; MsgRouter: TYPE ~ Feedback.MsgRouter; Append: PUBLIC PROC [routerName: ATOM, msgType: MsgType, msgClass: MsgClass, msg: Rope.ROPE] = { router: MsgRouter _ Feedback.EnsureRouter[routerName]; Feedback.Append[router, msgType, msgClass, msg]; }; PutF: PUBLIC PROC [routerName: ATOM, msgType: MsgType, msgClass: MsgClass, format: Rope.ROPE _ NIL, v1, v2, v3, v4, v5: IO.Value _ [null[]] ] = { router: MsgRouter _ Feedback.EnsureRouter[routerName]; Feedback.PutF[router, msgType, msgClass, format, v1, v2, v3, v4, v5]; }; Blink: PUBLIC PROC [routerName: ATOM, msgClass: MsgClass _ $All] = { router: MsgRouter _ Feedback.EnsureRouter[routerName]; Feedback.Blink[router, msgClass]; }; ClearHerald: PUBLIC PROC [routerName: ATOM, msgClass: MsgClass _ $All] = { router: MsgRouter _ Feedback.EnsureRouter[routerName]; Feedback.ClearHerald[router, msgClass]; }; SetRouterOn: PUBLIC PROC [routerName: ATOM, on: BOOL] = { router: MsgRouter _ Feedback.EnsureRouter[routerName]; Feedback.SetRouterOn[router, on]; }; GetRouterOn: PUBLIC PROC [routerName: ATOM] RETURNS [on: BOOL] = { router: MsgRouter _ Feedback.EnsureRouter[routerName]; RETURN Feedback.GetRouterOn[router]; }; END. ( SimpleFeedbackImpl.mesa Copyright Σ 1990 by Xerox Corporation. All rights reserved. Bier, May 1, 1990 11:02 pm PDT Last tweaked by Mike Spreitzer on May 3, 1990 7:49:44 am PDT Contents: The implementations of the routines in SimpleFeedback.mesa are implemented here (instead of in FeedbackImpl) so that the procedure names Append, PutF, Blink, and ClearHerald can refer to routines that take router names in SimpleFeedback.mesa, while they refer to routines that take routers in Feedback.mesa. This allows short names to be used everywhere. Κτ•NewlineDelimiter ™codešœ™Kšœ<™