// Keyword.decl -- declarations for keyword table package
// Copyright Xerox Corporation 1979

// Last modified May 12, 1982  5:40 PM by Taft


//---------------------------------------------------------------------------
structure KTE:  // Keyword Table Entry
//---------------------------------------------------------------------------
[
key word		// -> keyword string
entry word		// one or more words of client data start here
]

//---------------------------------------------------------------------------
structure KT:  // Keyword Table
//---------------------------------------------------------------------------
[
// defined operations
Insert word		// Call0: insert keyword in table
Delete word		// Call1: delete keyword from table
Lookup word		// Call2: lookup keyword
Enumerate word		// Call3: enumerate keyword table
Destroy word		// Call4: destroy keyword table

// instance data
zone word		// zone from which KT allocated
numEntries word		// present number of entries in table
maxEntries word		// maximum number of entries
lenKTE word		// length of each keyword table entry
kte↑0,0 @KTE		// first entry starts here
]

manifest
[
// error codes
ecKeyAlreadyExists = 2825
ecKeyTableFull = 2826
ecKeyDoesntExist = 2827
]