GCC Middle and Back End API Reference
pointer_hash< Type > Struct Template Reference

#include <hash-traits.h>

Public Types

typedef Type * value_type
 
typedef Type * compare_type
 

Static Public Member Functions

static hashval_t hash (const value_type &)
 
static bool equal (const value_type &existing, const compare_type &candidate)
 
static void mark_deleted (Type *&)
 
static void mark_empty (Type *&)
 
static bool is_deleted (Type *)
 
static bool is_empty (Type *)
 

Static Public Attributes

static const bool empty_zero_p = true
 

Detailed Description

template<typename Type>
struct pointer_hash< Type >
Pointer hasher based on pointer equality.  Other types of pointer hash
can inherit this and override the hash and equal functions with some
other form of equality (such as string equality).   

Member Typedef Documentation

◆ compare_type

template<typename Type >
typedef Type* pointer_hash< Type >::compare_type

◆ value_type

template<typename Type >
typedef Type* pointer_hash< Type >::value_type

Member Function Documentation

◆ equal()

template<typename Type >
bool pointer_hash< Type >::equal ( const value_type & existing,
const compare_type & candidate )
inlinestatic

References candidate().

◆ hash()

template<typename Type >
hashval_t pointer_hash< Type >::hash ( const value_type & candidate)
inlinestatic

References candidate().

◆ is_deleted()

template<typename Type >
bool pointer_hash< Type >::is_deleted ( Type * e)
inlinestatic

◆ is_empty()

template<typename Type >
bool pointer_hash< Type >::is_empty ( Type * e)
inlinestatic

References NULL.

◆ mark_deleted()

template<typename Type >
void pointer_hash< Type >::mark_deleted ( Type *& e)
inlinestatic

◆ mark_empty()

template<typename Type >
void pointer_hash< Type >::mark_empty ( Type *& e)
inlinestatic

References NULL.

Field Documentation

◆ empty_zero_p

template<typename Type >
const bool pointer_hash< Type >::empty_zero_p = true
static

The documentation for this struct was generated from the following file: