DIRECTORY BTree, BTreeVM, FS, Log USING [ WhereToReport ], Rope USING [ ROPE ], RefTab USING [ Ref ] ; ThNet: CEDAR DEFINITIONS = { PD: TYPE = RECORD [ debug: BOOLEAN, -- Diagnostic and progress display encryptionRequested: BOOLEAN, -- Encrypt RPC encryptVoice: BOOLEAN, -- Separate decision; false for debugging only, please! defaultLarkReports: BOOLEAN_FALSE -- If TRUE and debug, Lark events reported SOMEwhere. ]; pd: REF PD; WPState: TYPE = REF WPStateRecord; WPStateRecord: TYPE = RECORD [ wpTree: BTree.Tree, wpVM: BTreeVM.Handle, keyRecord: REF, wpFeepTree: BTree.Tree, wpFeepVM: BTreeVM.Handle, feepKeyRecord: REF, wpDataVMFile: FS.OpenFile, wpDataVM: BTreeVM.Handle, wpDataVMLen: INT_0, wpDataVMValid: BOOL_TRUE, wpOpen: BOOL_FALSE ]; ROPE: TYPE=Rope.ROPE; WPListing: TYPE = RefTab.Ref; -- a table of keys and values. Attrs: TYPE = MACHINE DEPENDENT { name(1), rName(2), officeNumber(3), officeDDDNumber(4), outsideNumber(5), officeAddress(6), officeLocation(7), organization(8), homeAddress(9), frequency(10), mailSystem(11), primaryKey(12), (15) }; WhitePagesLookup: PROC[ wpState: WPState, name: ROPE, feep: BOOL_FALSE ] RETURNS [ listing: WPListing ]; WhitePagesEntry: PROC[ wpState: WPState, name: ROPE_NIL, key: ATOM_$officeNumber, feep: BOOL_FALSE, listing: WPListing_NIL ] RETURNS [fullRName: ROPE, entry: ROPE, newListing: WPListing]; WhitePagesEnter: PROC[wpState: WPState, listing: WPListing]; WhitePagesPrint: PUBLIC SAFE PROC[wpState: WPState, listing: WPListing]; InitWhitePagesDatabase: PUBLIC SAFE PROC[ fileName: ROPE, accessOptions: FS.AccessOptions _ $read, howToComplain: Log.WhereToReport_$System] RETURNS[wpState: WPState_NIL]; HowToDial: PROC[phoneNumber: ROPE, ownExtension: ROPE_NIL] RETURNS [whatToDial: ROPE, isLocalExtension: BOOLEAN]; FeepName: PROC[rName: ROPE] RETURNS [feepName: ROPE]; }. ThNet.mesa Last modified by D. Swinehart, January 13, 1984 4:36 pm Ephemeral and Persistent data base services for Thrush Thrush-wide system control parameters. Otherwise, only reported if LarkControl window up for this Lark and debug=TRUE Types WhitePages These functions provide access to Swinehart's cobby old BTree-based "White Pages" database. This one is assumed to be keyed and sorted by RName. They are at present only called by the RName diddling code; see same for usage. name must be in form rr.xxxxxxx Returns first listing for which name is a substring, case unimportant, of the listing Put in something new, or replace something old. Include an enumerator here, if anybody ends up wanting it outside the implementation. Telephone number interpretation �ʘJšœ ™ Jšœ7™7J˜Jšœ6™6J˜šÏk ˜ J˜J˜J˜Jšœ�œ˜Jšœ�œ�œ˜Jšœ�œ˜J˜J˜—Jšœ�œ˜J˜Jšœ&™&J˜š�œ�œ�œ˜Jšœ�œÏc"˜2Jšœ�œž˜,Jšœ�œž7˜Nšœ�œ�œž5˜WJšœJ�™N—J˜—šœ�œ�œ˜ J˜—™J˜Jšœ �œ�œ˜"šœ�œ�œ˜J˜J˜Jšœ �œ˜J˜J˜J˜Jšœ�œ˜J˜Jšœ�œ ˜J˜Jšœ �œ˜Jšœ�œ�œ˜J˜Jšœ�œ�˜J˜J˜—Jš�œ�œ�œ˜Jšœ �œž˜J˜J˜—J˜—™ J™JšœQ™QJšœ?™?JšœO™OJ˜š Ïnœ�œ�œ�œ�œ�œ˜hJšœ™J™U—J™šŸœ�œ˜Jšœ�œ�œ�œ˜:Jšœ�œ�œ�˜(Jšœ�œ �œ �œ˜@—J˜šŸœ�œ'˜