System.Hash.THashBobJenkins
Delphi
THashBobJenkins = record
private
FHash: Integer;
function GetDigest: TBytes;
class function HashLittle(const Data; Len, InitVal: Integer): Integer; static;
public
class function Create: THashBobJenkins; static;
procedure Reset(AInitialValue: Integer = 0);
procedure Update(const AData; ALength: Cardinal); overload; inline;
procedure Update(const AData: TBytes; ALength: Cardinal = 0); overload; inline;
procedure Update(const Input: string); overload; inline;
function HashAsBytes: TBytes;
function HashAsInteger: Integer;
function HashAsString: string;
class function GetHashBytes(const AData: string): TBytes; static;
class function GetHashString(const AString: string): string; static;
class function GetHashValue(const AData: string): Integer; overload; static; inline;
class function GetHashValue(const AData; ALength: Integer; AInitialValue: Integer = 0): Integer; overload; static; inline;
end;
C++
struct DECLSPEC_DRECORD THashBobJenkins
{
private:
int FHash;
#ifndef _WIN64
System::DynamicArray<System::Byte> __fastcall GetDigest();
#else /* _WIN64 */
System::TArray__1<System::Byte> __fastcall GetDigest();
#endif /* _WIN64 */
static int __fastcall HashLittle(const void *Data, int Len, int InitVal);
public:
static THashBobJenkins __fastcall Create();
void __fastcall Reset(int AInitialValue = 0x0);
void __fastcall Update(const void *AData, unsigned ALength)/* overload */;
#ifndef _WIN64
void __fastcall Update(const System::DynamicArray<System::Byte> AData, unsigned ALength = (unsigned)(0x0))/* overload */;
#else /* _WIN64 */
void __fastcall Update(const System::TArray__1<System::Byte> AData, unsigned ALength = (unsigned)(0x0))/* overload */;
#endif /* _WIN64 */
void __fastcall Update(const System::UnicodeString Input)/* overload */;
#ifndef _WIN64
System::DynamicArray<System::Byte> __fastcall HashAsBytes();
#else /* _WIN64 */
System::TArray__1<System::Byte> __fastcall HashAsBytes();
#endif /* _WIN64 */
int __fastcall HashAsInteger();
System::UnicodeString __fastcall HashAsString();
#ifndef _WIN64
static System::DynamicArray<System::Byte> __fastcall GetHashBytes(const System::UnicodeString AData);
#else /* _WIN64 */
static System::TArray__1<System::Byte> __fastcall GetHashBytes(const System::UnicodeString AData);
#endif /* _WIN64 */
static System::UnicodeString __fastcall GetHashString(const System::UnicodeString AString);
static int __fastcall GetHashValue(const System::UnicodeString AData)/* overload */;
static int __fastcall GetHashValue(const void *AData, int ALength, int AInitialValue = 0x0)/* overload */;
};
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
record struct |
public | System.Hash.pas System.Hash.hpp |
System.Hash | System.Hash |
Description
Enregistrement qui implémente le type de hachage Jenkins.
THashBobJenkins fournit des méthodes comme :
- Update : met à jour la valeur de hachage avec les données fournies.
- GetHashValue : renvoie la valeur de hachage des données fournies.
- HashAsString : renvoie une représentation chaîne de la valeur de hachage.