GCC Middle and Back End API Reference
locus_discrim_hasher Struct Reference
Inheritance diagram for locus_discrim_hasher:
Collaboration diagram for locus_discrim_hasher:

Public Types

typedef Typevalue_type
 
typedef Typecompare_type
 

Static Public Member Functions

static hashval_t hash (const locus_discrim_map *)
 
static bool equal (const locus_discrim_map *, const locus_discrim_map *)
 
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 void remove (Type *p)
 

Static Public Attributes

static const bool empty_zero_p = true
 

Detailed Description

Hashtable helpers.   

Member Typedef Documentation

◆ compare_type

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

◆ value_type

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

Member Function Documentation

◆ equal() [1/2]

bool locus_discrim_hasher::equal ( const locus_discrim_map * a,
const locus_discrim_map * b )
inlinestatic
Equality function for the locus-to-discriminator map.  A and B
point to the two hash table entries to compare.   

References a, and b.

◆ equal() [2/2]

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

References candidate(), and ggc_alloc().

◆ hash() [1/2]

hashval_t locus_discrim_hasher::hash ( const locus_discrim_map * item)
inlinestatic
Trivial hash function for a location_t.  ITEM is a pointer to
a hash table entry that maps a location_t to a discriminator.   

References locus_discrim_map::location_line.

◆ hash() [2/2]

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

References candidate(), and ggc_alloc().

◆ is_deleted()

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

References ggc_alloc().

◆ is_empty()

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

References NULL.

◆ mark_deleted()

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

References ggc_alloc().

◆ mark_empty()

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

References NULL.

◆ remove()

template<typename Type >
void typed_free_remove< Type >::remove ( Type * p)
inlinestaticinherited
Remove with free.   

References free().

Field Documentation

◆ empty_zero_p

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

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