Copyright ©1995 by NeXT Computer, Inc. All Rights Reserved.
7 |
Indexing Kit
Classes
IXAttributeParser |
Inherits From: | Object |
Initializing an Instance |
init | Initializes and returns a new IXAttributeParser |
Managing Readers |
setAttributeReaders:(List *)aList | Sets the IXAttributeReaders to those in aList, freeing the previous IXAttributeReaders | |
getAttributeReaders:(List *)aList | Returns in aList the IXAttributeReaders |
Managing Text Stream Types |
(BOOL)understandsType:(const char *)aType | Returns YES if streams or files of aType are parsed | |
addSourceType:(const char *)aType | Sets aType as a type that will be parsed | |
removeSourceType:(const char *)aType | Unsets aType as a type that will be parsed |
Managing Parse Options |
setMinimumWeight:(unsigned int)anInt | Sets the minimum weight for a token to be included | |
(unsigned int)minimumWeight | Returns the minimum weight for a token to be included | |
setPercentPassed:(unsigned int)anInt | Sets the percent of tokens dropped | |
(unsigned int)percentPassed | Returns the percent of tokens dropped |
setWeightingDomain:(IXWeightingDomain *)aDomain |
Sets the weighting domain for caluculating peculiarities |
(IXWeightingDomain *)weightingDomain | Returns the weighting domain | |
setWeightingType:(IXWeightingType)anInt | Sets the type of weighting to calculate | |
(IXWeightingType)weightingType | Returns the type of weighting calculated |
Parsing Text |
parseFile:(const char *)filename | Parses the contents of filename if possible, adding the | |
ofType:(const char *)aType | information to the attribute-value list | |
parseStream:(NXStream *)stream | Parses the contents of stream if possible, adding the | |
ofType:(const char *)aType | information to the attribute-value list | |
(NXStream *)analyzeFile:(const char *)filename | Parses the contents of filename if possible, adding the | |
ofType:(const char *)aType | information and returning the analyzed stream |
(NXStream *)analyzeStream:(NXStream *)stream | Parses the contents of stream if possible, adding the | |
ofType:(const char *)aType | information and returning the analyzed stream |
reset | Clears all compiled information in the attribute-value list |
IXAttributeQuery |
Inherits From: | Object |
Initializing an IXAttributeQuery |
initQueryString:(const char *)aString |
andAttributeParser:(IXAttributeParser *)aParser |
Initializes a new IXAttributeQuery with aString as |
the query expression and aParser used to parse it |
Accessing Attributes |
(char *)attributeNames | Returns the names of attributes in the query string | |
(IXAttributeParser *)attributeParser | Returns the IXAttributeParser |
Retrieving the Query Expression |
(const char *)queryString | Returns the query string |
Evaluating the Query |
(IXPostingList *)evaluateFor:anObject | Evaluates the query string against anObject, returning the records that match in an IXPostingList |
IXAttributeReader |
Inherits From: | Object |
Analyzing a Stream of Text |
(NXStream *)analyzeStream:(NXStream *)stream |
Analyzes the text in stream, returning a stream of lexed text in Attribute Reader Format |
Altering Words |
(unsigned int)foldPlural:(char *)aString | Reduces aString to its singular form | |
inLength:(unsigned int)aLength | ||
(unsigned int)reduceStem:(char *)aString | Reduces aString to its base or root form | |
inLength:(unsigned int)aLength |
Setting Reader Options |
setCaseFolded:(BOOL)flag | Sets whether uppercase letters are changed to lowercase | |
(BOOL)isCaseFolded | Returns whether uppercase letters are changed to lowercase | |
setPluralsFolded:(BOOL)flag | Sets whether plural words are reduced to singular | |
(BOOL)arePluralsFolded | Returns whether plural words are reduced to singular | |
setStemsReduced:(BOOL)flag | Sets whether words are reduced to base or root forms | |
(BOOL)areStemsReduced | Returns whether words are reduced to base or root forms | |
setPunctuation:(const char *)aString | Sets the set of characters used to delimit tokens to aString | |
(char *)punctuation | Returns the set of characters used to delimit tokens | |
setStopWords:(const char *)stopWords | Sets the words that are deleted from a stream | |
(char *)stopWords | Returns the words that are deleted from a stream |
IXBTree |
Inherits From: | Object | |
Conforms To: | IXBlockAndStoreAccess IXNameAndFileAccess IXComparatorSetting IXComparisonSetting |
Accessing IXBTree Information |
(unsigned int)count | Returns the number of key-value pairs in the IXBTree | |
(unsigned int)keyLimit | Returns the maximumn allowed length for a key |
Affecting IXBTree Contents |
empty | Removes the contents of the IXBTree | |
compact | Compacts the IXBTree's contents to consume less space |
Optimizing Performance |
optimizeForSpace | Keeps the IXBTree small, making insertions slower but seeks faster | |
optimizeForTime | Makes insertions faster, and seeks slower |
IXBTreeCursor |
Inherits From: | Object | |
Conforms To: | IXCursorPositioning |
Initializing an IXBTreeCursor |
initWithBTree:(IXBTree *)aBTree | Initializes a new IXBTreeCursor to move in aBTree |
Accessing the IXBTree |
(IXBTree *)btree | Returns the IXBTree that the cursor moves in |
Positioning with Hints |
(BOOL)setKey:(void *)aKey | Positions the IXBTreeCursor at aKey if possible, | |
andLength:(unsigned int)aLength | using aHint to speed search; returns YES if aKey | |
withHint:(unsigned int)aHint | is found | |
(BOOL)getKey:(void **)aKey | Returns the position of the cursor in aKey and aLength; | |
andLength:(unsigned int *)aLength | also returning in aHint a hint that can be used to speed | |
withHint:(unsigned int *)aHint | later search; returns NO if the cursor is past the end of the IXBTree's key space |
Accessing IXBTree Data |
(BOOL)writeValue:(void *)aValue | Writes or inserts aValue at the cursor's position | |
andLength:(unsigned int)aLength | ||
writeRange:(void *)aRange | Writes aRange into the value at the cursor's position; | |
atOffset:(unsigned int)anOffset | if the cursor isn't exactly on a key, raises an exception | |
forLength:(unsigned int)aLength | ||
(unsigned int)readValue:(void **)aValue | Reads the value at the cursor's position and returns its length; slides forward if needed to get a value | |
(unsigned int)readRange:(void **)aRange | Reads a portion of the value at the cursor's position and | |
ofLength:(unsigned int)aLength | returns its length; if the cursor isn't exactly on a key, | |
atOffset:(unsigned int)anOffset | raises an exception | |
removeValue | Removes the value at the cursor's position; if the cursor isn't exactly on a key, raises an exception |
IXFileFinder |
Inherits From: | Object | |
Conforms To: | IXBlockAndStoreAccess IXNameAndFileAccess IXFileFinderConfiguration IXFileFinderQueryAndUpdate NXReference |
Initializing an IXFileFinder |
initInStore:(IXStore *)aStore | Initializes a new IXFileFinder in aStore to index files | |
atPath:(const char *)path | in path | |
initFromBlock:(unsigned int)aHandle | Reloads an IXFileFinder from block aHandle in aStore | |
inStore:(IXStore *)aStore | to index files in path | |
atPath:(const char *)path | ||
initWithName:(const char *)aName | Initializes a new IXFileFinder named aName in filename | |
inFile:(const char *)filename | to index files in path | |
atPath:(const char *)path | ||
initFromName:(const char *)aName | Reloads an IXFileFinder stored under aName in filename, | |
inFile:(const char *)filename | allowing writing back to the file according to flag, | |
forWriting:(BOOL)flag | and set to index files in path | |
atPath:(const char *)path |
IXFileRecord |
Inherits From: | Object | |
Conforms To: | NXTransport |
Initializing a New Instance |
initWithFileFinder:(IXFileFinder *)aFileFinder | Initializes a new IXFileRecord for aFileFinder |
Getting the File Finder |
(IXFileFinder *)fileFinder | Returns the IXFileFinder that the IXFileRecord belongs to |
Accessing File Attributes |
setFilename:(const char *)aName | Sets the filename that the IXFileRecord refers to to aName | |
(const char *)filename | Returns the filename that the IXFileRecord refers to | |
setFiletype:(const char *)aType | Sets the recorded type for the associated file to aType | |
(const char *)filetype | Returns the recorded type for the associated file | |
setDescription:(const char *)aDescription | Sets the description for the associated file to aName | |
(const char *)description | Returns the description for the associated file | |
setFiledate:(unsigned int)aDate | Sets the recorded creation date for the associated file to aDate | |
(unsigned int)filedate | Returns the recorded creation date for the associated file |
Accessing UNIX File Information |
(const struct stat *)statBuffer | Returns the cached UNIX stat buffer for the associated file, or NULL if one hasn't been cached |
IXLanguageReader |
Inherits From: | IXAttributeReader : Object | |
Conforms To: | IXAttributeReading (IXAttributeReader) |
Getting Language Information |
+ (char *)installedLanguages | Returns the languages for which readers are installed |
+ (Class)classForLanguage:(const char *)aLanguage |
Returns the IXLanguageReader subclass for aLanguage |
Getting Objects Associated with Languages |
+ readerForLanguage:(const char *)aLanguage | Returns an IXLanguageReader for aLanguage | |
+ domainForLanguage:(const char *)aLanguage | Returns an IXWeightingDomain for aLanguage |
Getting the Target Language |
+ (NXAtom)targetLanguage | Returns the target language of the subclass | |
(NXAtom)targetLanguage | Returns the target language of the reader |
Disabling Dynamic Loading |
+ disableLoading | Disables dynamic loading of external language readers |
IXPostingCursor |
Inherits From: | IXBTreeCursor : Object | |
Conforms To: | IXPostingExchange IXPostingOperations IXCursorPositioning (IXBTreeCursor) |
Methods |
This class declares no methods. |
IXPostingList |
Inherits From: | List : Object | |
Conforms To: | IXPostingExchange NXTransport |
Initializing an IXPostingList |
initWithSource:(id <IXRecordReading>)aSource | Initializes a new IXPostingList to extract objects from aSource |
initWithSource:(id <IXRecordReading>)aSource |
andPostingsIn:(id <IXPostingExchange>)anObject |
Initializes a new IXPostingList to extract objects from aSource and initially contain the postings in anObject |
Retrieving the Source |
(id <IXRecordReading>)source | Returns the archive from which objects are extracted |
Manipulating Objects by Handle |
addHandle:(unsigned int)aHandle | Adds a new posting to the end of the list | |
withWeight:(unsigned int)aWeight | ||
insertHandle:(unsigned int)aHandle | Inserts a new posting at index | |
withWeight:(unsigned int)aWeight | ||
at:(unsigned int)index | ||
replaceHandleAt:(unsigned int)index | Replaces the posting at index with the information supplied | |
with:(unsigned int)aHandle | ||
weight:(unsigned int)aWeight |
Manipulating Objects by id |
addObject:anObject | Adds anObject to the end of the list with aWeight, but no | |
withWeight:(unsigned int)aWeight | posting handle | |
insertObject:anObject | Inserts anObject with aWeight at index, but without a | |
withWeight:(unsigned int)aWeight | posting handle | |
at:(unsigned int)index | ||
replaceObjectAt:(unsigned int)index | Replaces the object at index with the object and weight | |
with:anObject | supplied, but without a posting handle | |
weight:(unsigned int)aWeight |
Manipulating Objects by Index |
(unsigned int)indexForHandle:(unsigned int)handle |
Returns the index of the posting with handle handle |
(unsigned int)handleOfObjectAt:(unsigned int)index |
Returns the handle for the posting at index |
(unsigned int)weightOfObjectAt:(unsigned int)index |
Returns the weight for the posting at index |
Sorting the Contents |
sortByWeightAscending:(BOOL)flag | Sorts the postings and objects by their weight | |
sortBySelector:(SEL)aSelector | Sorts the postings and objects based on the return values | |
ascending:(BOOL)flag | of aSelector as sent to each object |
IXPostingSet |
Inherits From: | Object | |
Conforms To: | IXPostingExchange IXPostingOperations |
Initializing Instances |
initCount:(unsigned int)count | Inializes a new IXPostingSet to conatin count postings | |
andPostings:(const IXPosting *)postings | ||
initWithPostingsIn:anObject | Initializes a new IXPostingSet to contain the postings in anObject |
Setting the Postings |
setCount:(unsigned int)count | Sets the postings in the IXPostingSet to count postings, | |
andPostings:(const IXPosting *)postings | copying them if flag is YES | |
byCopy:(BOOL)flag |
Accessing Postings by Position |
(unsigned int)setPosition:(unsigned int)index | Sets the selected posting to the one at position index |
Performing Set Operations |
formUnionWithPostingsIn:(id <IXPostingExchange>)anObject |
Performs a set union with the postings in anObject, altering the IXPostingSet's contents but not anObject's |
formIntersectionWithPostingsIn:(id <IXPostingExchange>)anObject |
Performs a set intersection with the postings in anObject, altering the IXPostingSet's contents but not anObject's |
subtractPostingsIn:(id <IXPostingExchange>)anObject |
Performs a set subtraction with the postings in anObject, altering the IXPostingSet's contents but not anObject's |
IXRecordManager |
Inherits From: | Object | |
Conforms To: | IXBlockAndStoreAccess IXNameAndFileAccess IXRecordWriting IXTransientAccess IXTransientMessaging |
Adding and Removing Attributes |
addAttributeNamed:(const char *)aName | Creates an attribute named aName, based on the values | |
forSelector:(SEL)aSelector | returned by objects sent aSelector | |
(BOOL)hasAttributeNamed:(const char *)aName | Returns whether an attribute named aName exists | |
removeAttributeNamed:(const char *)aName | Removes the attribute named aName |
Key Comparison |
setComparisonFormat:(const char *)aFormat | Sets the data format used for values in the attribute named | |
forAttributeNamed:(const char *)aName | aName |
(const char *)comparisonFormatForAttributeNamed:(const char *)aName |
Returns the data format used for values in the attribute named aName |
setComparator:(IXComparator *)aComparator | Sets the comparator function and context used for values | |
andContext:(const void *)aContext | in the attribute named aName | |
forAttributeNamed:(const char *)aName | ||
getComparator:(IXComparator **)aComparator | Returns the comparator function and context used for | |
andContext:(const void **)aContext | values in the attribute named aName | |
forAttributeNamed:(const char *)aName |
Setting Attribute Targets |
setTargetClass:aClass | Restricts the attribute named aName to contain references | |
forAttributeNamed:(const char *)aName | only to objects of class aClass (or a subclass) | |
getTargetName:(const char **)aName | Returns the name and class version of the target class for | |
andVersion:(unsigned int *)targetVersion | the attribute named aName | |
forAttributeNamed:(const char *)aName |
Accessing Attributes |
(IXPostingCursor *)cursorForAttributeNamed:(const char *)aName |
Returns an IXPostingCursor that may be used to search for values for the attribute named aName |
Getting Attribute Information |
(SEL)selectorForAttributeNamed:(const char *)aName |
Returns the selector used to build the attribute named aName |
(char *)attributeNames | Returns the names of all attributes in the IXRecordManager |
Accessing Classes |
(char *)classNames | Returns the names of all classes that have instances stored in the IXRecordManager | |
(char *)attributeNamesForClass:aClass | Returns the names of the attributes in the IXRecordManager that contain references to instances of aClass (or a subclass) | |
(IXPostingList *)recordsForClass:aClass | Returns in an IXPostingList all instances in the IXRecordManager of aClass (but not subclasses) |
Discarding Records |
discardRecord:(unsigned int)aHandle | Discards the records identified by aHandle | |
reclaimRecord:(unsigned int)aHandle | Reclaimes the discarded record identified by aHandle | |
(IXPostingList *)discards | Returns in an IXPostingList all discarded records | |
clean | Permanently deletes all discarded records |
Setting Attribute Descriptions |
setDescription:(const char *)aDescription | Sets the description for the attribute named aName to | |
forAttributeNamed:(const char *)aName | aDescription | |
getDescription:(char **)aDescription | Returns the description for the attribute named aName | |
forAttributeNamed:(const char *)aName |
Setting Parsers |
setParser:(IXAttributeParser *)aParser | Sets the IXAttributeParser used for the attribute named | |
forAttributeNamed:(const char *)aName | aName |
(IXAttributeParser *)parserForAttributeNamed:(const char *)aName |
Returns the IXAttributeParser used for the attribute named aName |
Writing Blobs |
(BOOL)setValue:(const void *)aValue | Stores aValue under blobName on behalf of the record | |
andLength:(unsigned int)aLength | identified by aHandle; returns YES on success, NO | |
ofBlob:(const char *)blobName | otherwise | |
forRecord:(unsigned int)aHandle | ||
(BOOL)getValue:(void **)aValue | Retrieves the value and length for blobName on behalf of | |
andLength:(unsigned int *)aLength | the record identified by aHandle; returns YES on | |
ofBlob:(const char *)blobName | success, NO otherwise | |
forRecord:(unsigned int)aHandle |
IXStore |
Inherits From: | Object |
Initializing, Copying, and Freeing Instances |
init | Initializes a new IXStore | |
copy | Returns a copy of the IXStore that references the same storage | |
free | Deallocates the IXStore, and all the storage if it's not shared |
Creating, Copying, and Freeing Blocks |
createBlock:(unsigned int *)aHandle | Creates a block of size size and returns its identifier in | |
ofSize:(unsigned int)size | aHandle | |
(unsigned int)copyBlock:(unsigned int)aHandle | Copies a portion of the block identified by aHandle and | |
atOffset:(unsigned int)anOffset | returns the copies identifier | |
forLength:(unsigned int)aLength | ||
freeBlock:(unsigned int)aHandle | Frees the block identified by aHandle |
Opening and Closing Blocks |
(void *)openBlock:(unsigned int)aHandle | Opens a portion of the block identified by aHandle for | |
atOffset:(unsigned int)anOffset | writing if possible, otherwise raises an exception | |
forLength:(unsigned int)aLength | ||
(void *)readBlock:(unsigned int)aHandle | Opens a portion of the block identified by aHandle for | |
atOffset:(unsigned int)anOffset | reading if possible, otherwise raises an exception | |
forLength:(unsigned int)aLength | ||
closeBlock:(unsigned int)aHandle | Closes the open block identified by aHandle |
Managing Block Sizes |
resizeBlock:(unsigned int)aHandle | Resizes the block identified by aHandle to aSize | |
toSize:(unsigned int)aSize | ||
(unsigned int)sizeOfBlock:(unsigned int)aHandle | Returns the size of the block identified by aHandle |
Using Transactions |
(unsigned int)startTransaction | Starts a new transaction and returns the nested level of transactions pending | |
abortTransaction | Aborts the current transaction | |
commitTransaction | Commits the changes made in the current transaction | |
(BOOL)areTransactionsEnabled | Returns YES if a transaction has ever been started | |
(unsigned int)nestingLevel | Returns the nesting level of transactions pending | |
(unsigned int)changeCount | Returns the number of commitTransaction and abortTransaction messages received by the instantiation |
Accessing the Contents |
setContents:(vm_address_t)someContents | Replaces the IXStore's storage with that in someContents | |
andLength:(vm_size_t)aLength | ||
getContents:(vm_address_t *)theContents | Returns in theContents and aLength the IXStore's storage | |
andLength:(vm_size_t *)aLength | and its length |
Reducing Memory Consumption |
compact | Compacts the blocks of storage to take as little space as possible; delayed until all transactions are finished |
IXStoreBlock |
Inherits From: | Object | |
Conforms To: | IXBlockAndStoreAccess NXReference |
Accessing the Block's Contents |
(void *)openAtOffset:(unsigned int)anOffset | Opens a portion of the block for writing if possible; raises | |
forLength:(unsigned int)aLength | an exception otherwise | |
(void *)readAtOffset:(unsigned int)anOffset | Opens a portion of the block for reading if possible; raises | |
forLength:(unsigned int)aLength | an exception otherwise |
(unsigned int)copyAtOffset:(unsigned int)anOffset |
forLength:(unsigned int)aLength | Copies a portion of the block, returning the copy's identifier |
close | Closes the block if it's been opened |
Managing the Block Size |
resizeTo:(unsigned int)size | Resizes the block to size | |
(unsigned int)size | Returns the size of the block |
Archiving an Object in an IXStoreBlock |
readObject | Unarchives the object previously archived into the block | |
writeObject:(unsigned int)anObject | Archives anObject into the block |
IXStoreDirectory |
Inherits From: | Object | |
Conforms To: | IXBlockAndStoreAccess IXNameAndFileAccess |
Adding Entries or Objects |
addEntryNamed:(const char *)aName | Creates an instance of the store client class named aName, | |
ofClass:aName | and stores it under aName | |
addEntryNamed:(const char *)aName | Creates an instance of the store client class named aName, | |
ofClass:aName | and stores it under aName in the block of the | |
atBlock:(IXBlockHandle)aHandle | IXStoreDirectory's IXStore identified by aHandle | |
addEntryNamed:(const char *)aName | Stores the store client anObject under aName | |
forObject:anObject |
Removing Entries |
freeEntryNamed:(const char *)aName | Removes from the IXStore the object stored under aName | |
removeName:(const char *)aName | Removes the reference to the object stored under aName, but doesn't remove the object itself | |
empty | Empties all stored objects and names | |
reset | Removes all references to stored objects, but not the objects themselves |
Getting Entries |
(BOOL)hasEntryNamed:(const char *)aName | Returns whether there's an object stored under aName | |
getBlock:(unsigned int *)aHandle | Gets the block identifier for the object stored under aName | |
ofEntryNamed:(const char *)aName | ||
getClass:(id *)aClass | Gets the class object for the object stored under aName | |
ofEntryNamed:(const char *)aName | ||
openEntryNamed:(const char *)aName | Activates and returns the object stored under aName | |
(const char **)entries | Returns the stored names |
IXStoreFile |
Inherits From: | IXStore : Object |
Initializing and Freeing Instances |
init | Initializes a new IXStoreFile in a temporary file | |
initWithFile:(const char *)filename | Initializes a new IXStoreFile with a file named filename | |
initFromFile:(const char *)filename | Initializes an IXStoreFile from existing storage in filename, | |
forWriting:(BOOL)flag | allowing writing back to the file if flag is YES | |
free | Frees the IXStoreFile, but doesn't affect the storage file |
Limiting the File Mapping Size |
setSizeLimit:(vm_size_t)aLimit | Sets the caching limit for the IXStoreFile to aLimit | |
(vm_size_t)sizeLimit | Returns the caching limit for the IXStoreFile |
Getting File Information |
(int)descriptor | Returns the file descriptor for the storage file | |
(const char *)filename | Returns the name of the storage file |
IXWeightingDomain |
Inherits From: | Object |
Initializing Instances |
initFromDomain:(NXStream *)stream | Initializes a new IXWeightingDomain from domain format data in stream | |
initFromHistogram:(NXStream *)stream | Initializes a new IXWeightingDomain from histogram format data in stream | |
initFromWFTable:(NXStream *)stream | Initializes a new IXWeightingDomain from NeXTSTEP 2.0 WFTable format data in stream |
Saving Domain Information |
writeDomain:(NXStream *)stream | Write domain format data to stream | |
writeHistogram:(NXStream *)stream | Writes histogram format data to stream | |
writeWFTable:(NXStream *)stream | Writes NeXTSTEP 2.0 WFTable format data to stream |
Counting Tokens |
(unsigned int)totalTokens | Returns the total number of tokens in the weighting domain | |
(unsigned int)uniqueTokens | Returns the total number of unque tokens |
Retrieving Information about Tokens |
(unsigned int)countForToken:(void *)aToken | Returns the number of occurrences of aToken in the domain | |
ofLength:(unsigned int)aLength | ||
(unsigned int)rankForToken:(void *)aToken | Returns the ordinal rank of occurrences of aToken in the | |
ofLength:(unsigned int)aLength | domain | |
(float)frequencyOfToken:(void *)aToken | Returns the frequency of aToken in the domain | |
ofLength:(unsigned int)aLength | ||
(float)peculiarityOfToken:(void *)aToken | Returns the peculiarity of aToken in the domain | |
ofLength:(unsigned int)aLength | ||
andFrequency:(float)aFrequency |