Class: MAccessorHelperFor

Declaration: HeteroDiskDictionary.h

Taxonomy Categories:

Member Functions:


Interface Category:

API.

Inherits From:

None.

Inherited By:

THeterogenousDiskDictionaryOf

Purpose:

This class provides protocol for TValueAccessorFor<AValue>, which supports key manipulation. This class is a mixin for THeterogenousDiskDictionaryOf.

Instantiation:

Allocate on the heap or the stack.

Deriving Classes:

Primarily for internal use. Use exclusively as a mixin for THeterogenousDiskDictionaryOf. External clients should never use this mixin for their own classes as it requires knowledge of internal implementation.

Concurrency:

Not multithread safe.

Resource Use:

No special requirements.

Other Considerations:

These member functions all deal with pointer aliases. In particular, SetKey retains an alias. Clients must ensure that the lifetime of the accessor is longer than that of the last key used in SetKey. Primarily for internal use.

Member Function: MAccessorHelperFor::SetKey

AKey * SetKey (const AKey * keyAlias, TValueAccessor & accessor) const

Interface Category:

API.

Purpose:

Stuffs the accessor with the new key and returns the previous key. The client must ensure that the lifetime of the accessor is longer than that of the last key used in SetKey.

Calling Context:

Called to associate a key with an accessor and to return the previously associated key.

Parameters:

Return Value:

Returns the previous key that was associated with the accessor.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

The client must ensure that the lifetime of the accessor is longer than that of the last key used in SetKey.

Member Function: MAccessorHelperFor::GetKey

AKey * GetKey (TValueAccessor & accessor) const

Interface Category:

API.

Purpose:

Extracts and returns the current key from the accessor.

Calling Context:

Called to extract and return the current key from the accessor.

Parameters:

Return Value:

Returns the key that was associated with the accessor, or NIL.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MAccessorHelperFor::ForgetKey

AKey * ForgetKey (TValueAccessor & accessor) const

Interface Category:

API.

Purpose:

Extracts and returns the current key, then does SetKey(NIL).

Calling Context:

Called to extract and return the current key, then does SetKey(NIL).

Parameters:

Return Value:

Returns the key that was associated with the accessor, or NIL.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MAccessorHelperFor::~MAccessorHelperFor

~ MAccessorHelperFor ()

Interface Category:

API.

Purpose:

Destructor.

Calling Context:

Called to destroy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: MAccessorHelperFor::GetProvider

MStorageProvider * GetProvider () const

Interface Category:

API.

Purpose:

Returns the MStorageProvider assigned to the MAccessorHelperFor.

Calling Context:

Called to return the MStorageProvider assigned to the MAccessorHelperFor.

Parameters:

Return Value:

Returns the MStorageProvider assigned to the MAccessorHelperFor.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

Requires some knowledge of the internal MStorageProvider.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.