mac-rom/Interfaces/CIncludes/Dictionary.h
Elliot Nunn 4325cdcc78 Bring in CubeE sources
Resource forks are included only for .rsrc files. These are DeRezzed into their data fork. 'ckid' resources, from the Projector VCS, are not included.

The Tools directory, containing mostly junk, is also excluded.
2017-12-26 09:52:23 +08:00

132 lines
3.4 KiB
C

/*
File: Dictionary.h
Written by: Hae-Sung Kim
Copyright: © 1992 by Apple Computer, Inc., all rights reserved.
Change History (most recent first):
<2> 6/3/92 DCL Cleanup to meet Interface Standards.
<1> 5/27/92 hsK first checked in
*/
#ifndef __DICTIONARY__
#define __DICTIONARY__
#ifndef __TYPES__
#include <Types.h>
#endif
#ifndef __FILES__
#include <Files.h>
#endif
/*------------------------------------------------------------------------------------------
Constant definitions.
------------------------------------------------------------------------------------------ */
/* Dictionary data insertion modes. */
enum {
kInsert = 0, /* Only insert the input entry if there is nothing in the dictionary that matches the key. */
kReplace = 1, /* Only replace the entries which match the key with the input entry. */
kInsertOrReplace = 2 /* Insert the entry if there is nothing in the dictionary which matches the key. */
/* If there is already matched entries, replace the existing matched entries with the input entry. */
};
typedef short InsertMode;
/* Key attribute constants. */
#define kIsCaseSensitive 0x10 /* case sensitive = 16 */
#define kIsNotDiacriticalSensitive 0x20 /* diac not sensitive = 32 */
/* Registered attribute type constants. */
enum {
kNoun = -1,
kVerb = -2,
kAdjective = -3,
kAdverb = -4
};
typedef short AttributeType;
/* ------------------------------------------------------------------------------------------
Type definitions.
------------------------------------------------------------------------------------------ */
/* Dictionary information record. */
struct DictionaryInformation{
FSSpec dictionaryFSSpec;
long numberOfRecords;
long currentGarbageSize;
ScriptCode script;
short maximumKeyLength;
unsigned char keyAttributes;
};
typedef struct DictionaryInformation DictionaryInformation;
/* --------------------------------------------------------------------------------------
Function ProtoTypes.
-------------------------------------------------------------------------------------- */
#ifdef __cplusplus
extern "C" {
#endif
pascal OSErr InitializeDictionary(FSSpecPtr theFsspecPtr, short maximumKeyLength,
unsigned char keyAttributes, ScriptCode script )
= { 0x303C,0x0500,0xAA53 };
pascal OSErr OpenDictionary( FSSpecPtr theFsspecPtr,
char accessPermission,
long *dictionaryReference )
= { 0x303C,0x0501,0xAA53 };
pascal OSErr CloseDictionary( long dictionaryReference )
= { 0x303C,0x0202,0xAA53 };
pascal OSErr InsertRecordToDictionary( long dictionaryReference,
ConstStr255Param key,
Handle recordDataHandle,
InsertMode whichMode )
= { 0x303C,0x0703,0xAA53 };
pascal OSErr DeleteRecordFromDictionary( long dictionaryReference,
ConstStr255Param key )
= { 0x303C,0x0404,0xAA53 };
pascal OSErr FindRecordInDictionary( long dictionaryReference,
ConstStr255Param key,
Ptr requestedAttributeTablePointer,
Handle recordDataHandle )
= { 0x303C,0x0805,0xAA53 };
pascal OSErr FindRecordByIndexInDictionary( long dictionaryReference,
long recordIndex,
Ptr requestedAttributeTablePointer,
Str255 recordKey,
Handle recordDataHandle )
= { 0x303C,0x0A06,0xAA53 };
pascal OSErr GetDictionaryInformation( long dictionaryReference,
DictionaryInformation *theDictionaryInformation)
= { 0x303C,0x0407,0xAA53 };
pascal OSErr CompactDictionary( long dictionaryReference )
= { 0x303C,0x0208,0xAA53 };
#ifdef __cplusplus
}
#endif
#endif __Dictionary__