Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

jenkins32.c File Reference

#include "jenkins.h"
#include <stdio.h>
#include <stddef.h>
#include <stdlib.h>

Defines

#define hashmask(n)   (hashsize(n)-1)
#define hashsize(n)   ((ub4)1<<(n))
#define mix(a, b, c)
#define mix2(a, b, c)

Typedefs

typedef unsigned char ub1
typedef u_int32_t ub4

Functions

__inline__ u_int32_t aw_jhash32 (u_int32_t k)
 Wrappers -RRL.

__inline__ u_int32_t aw_jhashString (const byte_t *k)


Define Documentation

#define hashmask (  n   )     (hashsize(n)-1)
 

#define hashsize (  n   )     ((ub4)1<<(n))
 

#define mix (  a,
b,
c   ) 
 

Value:

{ \
  a -= b; a -= c; a ^= (c>>13); \
  b -= c; b -= a; b ^= (a<<8); \
  c -= a; c -= b; c ^= (b>>13); \
  a -= b; a -= c; a ^= (c>>12);  \
  b -= c; b -= a; b ^= (a<<16); \
  c -= a; c -= b; c ^= (b>>5); \
  a -= b; a -= c; a ^= (c>>3);  \
  b -= c; b -= a; b ^= (a<<10); \
  c -= a; c -= b; c ^= (b>>15); \
}

#define mix2 (  a,
b,
c   ) 
 

Value:

{ \
  a -= b; a -= c; a ^= (c>>13); \
  b -= c; b -= a; b ^= (a<< 8); \
  c -= a; c -= b; c ^= ((b&0xffffffff)>>13); \
  a -= b; a -= c; a ^= ((c&0xffffffff)>>12); \
  b -= c; b -= a; b = (b ^ (a<<16)) & 0xffffffff; \
  c -= a; c -= b; c = (c ^ (b>> 5)) & 0xffffffff; \
  a -= b; a -= c; a = (a ^ (c>> 3)) & 0xffffffff; \
  b -= c; b -= a; b = (b ^ (a<<10)) & 0xffffffff; \
  c -= a; c -= b; c = (c ^ (b>>15)) & 0xffffffff; \
}


Typedef Documentation

typedef unsigned char ub1
 

typedef u_int32_t ub4
 


Function Documentation

__inline__ u_int32_t aw_jhash32 (  u_int32_t  k  ) 
 

Wrappers -RRL.

__inline__ u_int32_t aw_jhashString (  const byte_t *  k  ) 
 

Aware 0.11.1 Copyright (C) 1998-2005 Russell Leighton (russ@elegant-software.com)