DIRECTORY DFUtilities, IO USING [STREAM], SymTab USING [Ref], Rope USING [ROPE]; DFPorter: CEDAR DEFINITIONS ~ BEGIN OPEN DFUtilities, Rope; LORA: TYPE ~ LIST OF REF ANY; DFContents: TYPE ~ RECORD [name: ROPE, contents: LORA, distributed: BOOL ¬ FALSE]; FullFileItem: TYPE ~ RECORD [ directory: REF DirectoryItem, file: REF FileItem, sortClass: CARD ¬ 0 ]; OrderedCommentItem: TYPE ~ RECORD [ order: CARD, comment: REF CommentItem ]; ReadDFs: PROC [dfNames: LIST OF ROPE, followImports: BOOL ¬ FALSE] RETURNS [LIST OF DFContents]; SelfName: PROC [df: DFContents] RETURNS [ROPE]; ShortName: PROC [fileName: Rope.ROPE] RETURNS [ROPE]; BaseName: PROC [fileName: Rope.ROPE] RETURNS [ROPE]; StripVersion: PROC [fileName: Rope.ROPE] RETURNS [ROPE]; CanonicalFileName: PROC [fileName: Rope.ROPE] RETURNS [atom: ATOM]; ReadDF: PROC [name: ROPE] RETURNS [DFContents]; DistributeDF: PROC [df: DFContents] RETURNS [DFContents]; FactorDF: PROC [df: DFContents] RETURNS [DFContents]; WriteDF: PROC [df: DFContents]; MergeUsingLists: PROC [a, b: REF UsingList ¬ NIL] RETURNS [new: REF UsingList]; SortDF: PROC [df: DFContents] RETURNS [DFContents]; ExpandIncludes: PROC [df: DFContents] RETURNS [DFContents]; MkFile: PROC [filename: ROPE, root: BOOL ¬ FALSE] RETURNS [REF FileItem]; MkFull: PROC [dir: REF DirectoryItem, file: REF FileItem, sortClass: CARD ¬ 0] RETURNS [REF FullFileItem]; MkComment: PROC [rope: ROPE] RETURNS [REF CommentItem]; CouldntFind: SIGNAL [shortName, usingDF: ROPE]; MultiplyDefinedShortname: SIGNAL [shortName, df1, df2: ROPE]; GetDefinerTable: PROC [dfName: ROPE] RETURNS [x: SymTab.Ref]; BuildInversion: PROC [df: DFContents] RETURNS [SymTab.Ref]; IsImplementation: PROC [fileName: ROPE] RETURNS [impl: BOOL ¬ TRUE]; SplitIntoSuites: PROC [world: ROPE, component: ROPE, df: DFContents, definerTable: SymTab.Ref ¬ NIL, quickAndDirty: BOOL ¬ FALSE, intermediateSource: BOOL ¬ TRUE, intermediateObject: BOOL ¬ TRUE] RETURNS [result: LIST OF DFContents ¬ NIL]; PrintNames: PROC [stream: IO.STREAM, groupFormat: ROPE, itemFormat: ROPE, stripVersion: BOOL, list: LIST OF LIST OF DFContents]; PrintMultiplyDefinedWarning: PROC [stream: IO.STREAM, shortName, df1, df2: ROPE]; NFSRemoteFileNameFromFSName: PROC [rope: ROPE] RETURNS [ROPE]; END. κ DFPorter.mesa Copyright Σ 1989, 1991 by Xerox Corporation. All rights reserved. Michael Plass, March 5, 1991 10:44 pm PST Examples: groupFormat~"Do %g\n", itemFormat~"%g " groupFormat~"%g\n", itemFormat~"Include %g Of ~=\n " Κ&•NewlineDelimiter –(cedarcode) style™codešœ ™ Kšœ Οeœ7™BK™)—K˜šΟk ˜ K˜ Kšžœžœžœ˜Kšœžœ˜Kšœžœžœ˜—K˜KšΟnœžœž ˜šœž œ˜K˜•StartOfExpansionL -- [cmd: Commander.Handle] RETURNS [result: REF ANY _ NIL, msg: ROPE _ NIL]š žœžœžœžœžœžœ˜K˜—š œ žœžœžœ žœžœžœ˜RK˜—šœžœžœ˜Kšœ žœ˜Kšœžœ ˜Kšœ žœ˜K˜K˜—šœžœžœ˜#Kšœžœ˜ Kšœ žœ ˜K˜K˜—šŸœžœ žœžœžœžœžœžœžœžœ ˜`K˜—šŸœžœžœžœ˜/K˜—š Ÿ œžœžœžœžœ˜5K˜—š Ÿœžœžœžœžœ˜4K˜—š Ÿ œžœžœžœžœ˜8K˜—š Ÿœžœžœžœžœ˜CK˜—šŸœžœžœžœ˜/K˜—šŸ œžœžœ˜9K˜—šŸœžœžœ˜5K˜—šŸœžœ˜K˜—š Ÿœžœžœ žœžœžœ ˜OK˜—šŸœžœžœ˜3K˜—šŸœžœžœ˜;K˜—šŸœžœ žœžœžœžœžœ ˜IK˜—šŸœžœžœžœžœžœžœ˜jK˜—š Ÿ œžœžœžœžœ˜7K˜—šŸ œžœžœ˜/K˜—šŸœžœžœ˜=K˜—šŸœžœ žœžœ˜=K˜—šŸœžœžœ˜;K˜—š Ÿœžœ žœžœž œ˜DK˜—šŸœžœ žœ žœ-žœžœžœžœžœžœžœžœ žœžœžœ˜οK˜—– "cedar" stylešŸ œžœ žœžœžœžœžœžœžœžœžœ ˜€–3[text: REF TEXT _ NIL, oldStream: STREAM _ NIL]šœ ™ Kšœ'™'Kšœ5™5—K– "cedar" style˜—š Ÿœžœ žœžœžœ˜QK˜—š Ÿœžœžœžœžœ˜>K˜——K˜Kšžœ˜—…—ξώ