Object THAMTTypeInfo

DescriptionHierarchyFieldsMethodsProperties

Unit

Declaration

type THAMTTypeInfo = object(TObject)

Description

Default hash function and reference counting for strings/objects

The HAMT requires a hash function (hash) and equality test (equal) to compare keys.
Memory management requires methods for reference counting (addRef, release) . Reference counting is mandatory as the HAMT might make arbitrary many copies of everything. assignEqual is called to assign one item to an equal, but not identical item.
You can derive an object of THAMTTypeInfo to change some methods, e.g., the hashing.

Hierarchy

  • TObject
  • THAMTTypeInfo

Overview

Methods

Public class function hash(const s: string): THAMTHash; static; inline;
Public class function equal(const s, t: string): boolean; static; inline;
Public class procedure addRef(var k: string); inline; static;
Public class procedure release(var k: string); inline; static;
Public class function toString(const k: string): string; static; inline;
Public class procedure assignEqual(var a: string; const b: string); inline; static;
Public class procedure addRef(var k: IUnknown); static; inline;
Public class procedure release(var k: IUnknown); static; inline;
Public class procedure assignEqual(var a: IUnknown; const b: IUnknown); inline; static;
Public class procedure addRef(var k: TObject); inline;
Public class procedure release(var k: TObject); inline;
Public class function toString(const k: TObject): string; inline;
Public class procedure assignEqual(var a: TObject; const b: TObject); inline; static;

Description

Methods

Public class function hash(const s: string): THAMTHash; static; inline;
 
Public class function equal(const s, t: string): boolean; static; inline;
 
Public class procedure addRef(var k: string); inline; static;
 
Public class procedure release(var k: string); inline; static;
 
Public class function toString(const k: string): string; static; inline;
 
Public class procedure assignEqual(var a: string; const b: string); inline; static;
 
Public class procedure addRef(var k: IUnknown); static; inline;
 
Public class procedure release(var k: IUnknown); static; inline;
 
Public class procedure assignEqual(var a: IUnknown; const b: IUnknown); inline; static;
 
Public class procedure addRef(var k: TObject); inline;
 
Public class procedure release(var k: TObject); inline;
 
Public class function toString(const k: TObject): string; inline;
 
Public class procedure assignEqual(var a: TObject; const b: TObject); inline; static;
 

Generated by PasDoc 0.14.0.