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

hash.c File Reference

#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#include "hash.h"

Go to the source code of this file.

Defines

#define CHUNK   1

Functions

hash_tablehtNewTable (int size)
void htFreeHashTable (struct hash_table *ht)
void htHashStats (const struct hash_table *t)
static unsigned int htHashStrings (const char *s, const char *t)
static int in_table_aux (struct hash_table *t, int hash, const char *dir, const char *base)
int htInTable (struct hash_table *t, const char *dir, const char *base)
void htAddToTable (struct hash_table *t, const char *dir, const char *base)
void htRemoveFromTable (struct hash_table *t, const char *dir, const char *base)
int htNumEntries (struct hash_table *t)
void htIterStart (htIterator *iter)
int htIterGetNext (struct hash_table *t, htIterator *iter, const char **dir, const char **base)


Detailed Description

Definition in file hash.c.


Define Documentation

#define CHUNK   1
 

Definition at line 12 of file hash.c.

Referenced by htAddToTable(), and htNewTable().


Function Documentation

void htAddToTable struct hash_table t,
const char *  dir,
const char *  base
 

Definition at line 133 of file hash.c.

References bucket::allocated, filePath::base, CHUNK, bucket::data, filePath::dir, htHashStrings(), and in_table_aux().

Referenced by compareFileList().

void htFreeHashTable struct hash_table ht  ) 
 

Definition at line 53 of file hash.c.

References filePath::base, bucket::data, and filePath::dir.

Referenced by ugFindUpgradePackages().

void htHashStats const struct hash_table t  ) 
 

Definition at line 71 of file hash.c.

static unsigned int htHashStrings const char *  s,
const char *  t
[static]
 

Definition at line 92 of file hash.c.

Referenced by htAddToTable(), htInTable(), and htRemoveFromTable().

int htInTable struct hash_table t,
const char *  dir,
const char *  base
 

Definition at line 122 of file hash.c.

References htHashStrings(), and in_table_aux().

Referenced by findPackagesWithRelocatedFiles(), and removeMovedFilesAlreadyHandled().

int htIterGetNext struct hash_table t,
htIterator iter,
const char **  dir,
const char **  base
 

Definition at line 185 of file hash.c.

References filePath::base, and filePath::dir.

void htIterStart htIterator iter  ) 
 

Definition at line 180 of file hash.c.

struct hash_table* htNewTable int  size  ) 
 

Definition at line 32 of file hash.c.

References bucket::allocated, hash_table::bucket, CHUNK, bucket::data, hash_table::entries, bucket::firstFree, hash_table::overHead, and hash_table::size.

Referenced by ugFindUpgradePackages().

int htNumEntries struct hash_table t  ) 
 

Definition at line 176 of file hash.c.

void htRemoveFromTable struct hash_table t,
const char *  dir,
const char *  base
 

Definition at line 158 of file hash.c.

References htHashStrings(), and in_table_aux().

Referenced by findPackagesWithRelocatedFiles(), and removeMovedFilesAlreadyHandled().

static int in_table_aux struct hash_table t,
int  hash,
const char *  dir,
const char *  base
[static]
 

Definition at line 105 of file hash.c.

Referenced by htAddToTable(), htInTable(), and htRemoveFromTable().


Generated on Thu Apr 7 12:26:16 2005 for rpm by  doxygen 1.4.1