GCC Middle and Back End API Reference
is_a_helper< T > Struct Template Reference

#include <is-a.h>

Public Member Functions

template<>
bool test (symtab_node_base *p)
template<>
bool test (symtab_node_base *p)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (gimple gs)
template<>
bool test (const_gimple gs)
template<>
bool test (gimple gs)

Static Public Member Functions

template<typename U >
static bool test (U *p)
template<typename U >
static Tcast (U *p)

Detailed Description

template<typename T>
struct is_a_helper< T >

   A generic type conversion internal helper class.  

Member Function Documentation

template<typename T >
template<typename U >
T * is_a_helper< T >::cast ( U *  p)
inlinestatic
   Note that we deliberately do not define the 'test' member template.  Not
   doing so will result in a build-time error for type relationships that have
   not been defined, rather than a run-time error.  See the discussion above
   for when to define this member.  
   This is the generic implementation for casting from one type to another.
   Do not use this routine directly; it is an internal function.  See the
   discussion above for when to define this member.  

References is_a_helper< T >::test().

template<typename T >
template<typename U >
static bool is_a_helper< T >::test ( U *  p)
inlinestatic

Referenced by is_a_helper< T >::cast().

template<>
bool is_a_helper< cgraph_node >::test ( symtab_node_base p)
inline
   Report whether or not THIS symtab node is a function, aka cgraph_node.  
template<>
bool is_a_helper< varpool_node >::test ( symtab_node_base p)
inline
   Report whether or not THIS symtab node is a vriable, aka varpool_node.  
template<>
bool is_a_helper< gimple_statement_asm >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_bind >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_call >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_catch >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_eh_ctrl >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_eh_else >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_eh_filter >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_eh_mnt >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_atomic_load >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_atomic_store >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_continue >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_critical >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_for >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_parallel >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_sections >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_single >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_omp_task >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_phi >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_transaction >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_try >::test ( gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_wce >::test ( gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_asm >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_bind >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_call >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_catch >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_eh_ctrl >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_eh_filter >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_atomic_load >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_atomic_store >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_continue >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_critical >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_for >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_parallel >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_sections >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_single >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_omp_task >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_phi >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_transaction >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_with_ops >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_with_ops >::test ( gimple  gs)
inline
template<>
bool is_a_helper< const gimple_statement_with_memory_ops >::test ( const_gimple  gs)
inline
template<>
bool is_a_helper< gimple_statement_with_memory_ops >::test ( gimple  gs)
inline

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