# HashCode

Type Summary
Hash = LONGINT The integer type used to store hash values.

Procedure Summary
Append(Hash, VAR Hash)
Boolean(BOOLEAN): Hash
CharRegion(ARRAY OF CHAR, LONGINT, LONGINT): Hash
LongCharRegion(ARRAY OF LONGCHAR, LONGINT, LONGINT): Hash
LongReal(LONGREAL): Hash
Ptr(PTR): Hash
Real(REAL): Hash
Set(SET): Hash
UCS4CharRegion(ARRAY OF UCS4CHAR, LONGINT, LONGINT): Hash

Constant Summary
init When computing a hash from a set of hash codes, do something along the lines of

Type Detail

### Hash

    TYPE Hash = LONGINT

> The integer type used to store hash values.

Procedure Detail

### Append

    PROCEDURE Append(x: Hash;
                     VAR hash: Hash)

### Boolean

    PROCEDURE Boolean(x: BOOLEAN): Hash

### CharRegion

    PROCEDURE CharRegion(data: ARRAY OF CHAR;
                         start: LONGINT;
                         end: LONGINT): Hash

### LongCharRegion

    PROCEDURE LongCharRegion(data: ARRAY OF LONGCHAR;
                             start: LONGINT;
                             end: LONGINT): Hash

### LongReal

    PROCEDURE LongReal(x: LONGREAL): Hash

### Ptr

    PROCEDURE Ptr(x: PTR): Hash

### Real

    PROCEDURE Real(x: REAL): Hash

### Set

    PROCEDURE Set(x: SET): Hash

### UCS4CharRegion

    PROCEDURE UCS4CharRegion(data: ARRAY OF UCS4CHAR;
                             start: LONGINT;
                             end: LONGINT): Hash

Constant Detail

### init

    CONST init

> When computing a hash from a set of hash codes, do something along the lines of

> >     x := HashCode.init;
> >     FOREACH y IN (set of hashes) DO
> >       HashCode.Append(y, x);
> >     END;