DIRECTORY Rope USING [ROPE]; ImagerSwitches: CEDAR DEFINITIONS ~ BEGIN Define: PROC [switch: CHAR['a..'z], name: ATOM, doc: Rope.ROPE, defaultValue: REF] RETURNS [CHAR['a..'z]]; MultipleDefinition: ERROR [switch: CHAR]; Describe: PROC [switch: CHAR['a..'z]] RETURNS [name: ATOM, doc: Rope.ROPE, defaultValue: REF, value: REF]; Set: PROC [switch: CHAR['a..'z], name: ATOM, value: REF]; Undefined: ERROR [switch: CHAR]; Value: PROC [switch: CHAR['a..'z]] RETURNS [REF] ~ INLINE {RETURN [val[switch]]}; val: PRIVATE ARRAY CHAR['a..'z] OF REF; BoolValue: PROC [switch: CHAR['a..'z]] RETURNS [BOOL] ~ INLINE {RETURN [val[switch]#NIL]}; END. ζ ImagerSwitches.mesa Copyright Σ 1988, 1991 by Xerox Corporation. All rights reserved. Michael Plass, October 14, 1988 12:18:28 pm PDT Interface for setting/getting global switches. Use $true and NIL for boolean switches. Κ –(cedarcode) style•NewlineDelimiter ™codešœ™Kšœ Οeœ7™BK™/K™K™.—K˜KšΟk œžœžœ˜K˜KšΠlnœžœž ˜!šœž˜K˜šΟnœžœ žœžœ žœžœžœžœ ˜jKš œžœ žœ˜)K˜—š œžœ žœ žœžœ žœžœ žœ˜jK˜—š  œžœ žœžœ žœ˜9Kš  œžœ žœ˜ K˜—š œžœ žœ žœžœžœžœ˜Qš œž œžœ žœžœ˜'K˜——š  œžœ žœ žœžœžœžœžœ˜ZJ™'—K˜—K˜Kšžœ˜—…—†