%iFind.Find.Abstract

Internal class implementing actual find code. Do not access directly.

Property Inventory (Including Private)

Method Inventory (Including Private)

Properties

property IndexParams [ Private , MultiDimensional ];
Configuration parameters of associated iFind index
Property methods: IndexParamsDisplayToLogical(), IndexParamsGet(), IndexParamsIsValid(), IndexParamsLogicalToDisplay(), IndexParamsLogicalToOdbc(), IndexParamsNormalize(), IndexParamsSet()
property language as %Integer [ Private ];
optional language supplied to %FIND call
Property methods: languageDisplayToLogical(), languageGet(), languageIsValid(), languageLogicalToDisplay(), languageNormalize(), languageSet()
property option as %String [ Private ];
search option supplied to %FIND call
Property methods: optionDisplayToLogical(), optionGet(), optionIsValid(), optionLogicalToDisplay(), optionLogicalToOdbc(), optionNormalize(), optionSet()
property resultBits [ Private , MultiDimensional ];
Property methods: resultBitsDisplayToLogical(), resultBitsGet(), resultBitsIsValid(), resultBitsLogicalToDisplay(), resultBitsLogicalToOdbc(), resultBitsNormalize(), resultBitsSet()

Methods

private method %OnNew(ByRef pIndexParams) as %Status [ Language = objectscript ]
Inherited description:

This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status 
If instead of returning a %Status code this method returns an oref and this oref is a subclass of the current class, then this oref will be the one returned to the caller of the %New method.

method ContainsItem(pItem As %String) as %Boolean [ Language = objectscript ]
At minimum, must support IsElement(). Return 1 if given e is in the set
method GetChunk(pChunk As %Integer) as %Binary [ Language = objectscript ]
Note that it's OK for the returned bitmap b to have no bits set to 1, including b="" . On the other hand, it's also OK for the method to skip such a chunk and proceed to the next c . We might also need:
method NextChunk(ByRef pChunk As %Integer = "") as %Binary [ Language = objectscript ]
The above methods are used to emulate regular sets and bitmaps. To emulate additional bitmap-specific behavior, the following 4 methods are needed. These methods follow the same convention used for SQL bitmap index structures. The chunk# .c is input/output, also proceeding in order starting and ending with "" . When the returned .c is non-NULL, then the actual bitmap chunk of bits is returned in .b : Method NextChunk(pChunk As %Integer = "", ByRef bits As %Binary) As %Integer
method NextChunkInclusive(ByRef pChunk As %Integer = "") as %Binary [ Language = objectscript ]
Method NextChunkInclusive(pChunk As %Integer = "", ByRef bits As %Binary) As %Integer
method NextItem(pItem As %String = "") as %String [ Language = objectscript ]
The following 4 methods, esp. the first 2, are needed to emulate a regular index. The element .e is an input/output parameter, iterating in a sequence through all the elements of following the normal subscript order ( "]]" ), starting and ending with "", similar to $ORDER():
method PreviousChunk(ByRef pChunk As %Integer = "") as %Binary [ Language = objectscript ]
Method PreviousChunk(pChunk As %Integer = "", ByRef bits As %Binary) As %Integer
method PreviousChunkInclusive(ByRef pChunk As %Integer = "") as %Binary [ Language = objectscript ]
Method PreviousChunkInclusive(pChunk As %Integer = "", ByRef bits As %Binary) As %Integer
method PreviousItem(pItem As %String = "") as %String [ Language = objectscript ]
Inherited description:

The NextItem(), NextItemInclusive(), PreviousItem(), and PreviousItemInclusive() methods are required when %INSUB is used.

For a given pItem, return the first item < pItem

Inherited Members

Inherited Methods (Including Private)

Feedback