GDB (xrefs)
Classes | Macros | Typedefs | Functions | Variables
/tmp/gdb-8.1/gdb/cp-support.h File Reference
#include "symtab.h"
#include "vec.h"
#include "gdb_vecs.h"
#include "gdb_obstack.h"

Go to the source code of this file.

Classes

struct  demangle_parse_info
 

Macros

#define CP_ANONYMOUS_NAMESPACE_STR   "(anonymous namespace)"
 
#define CP_ANONYMOUS_NAMESPACE_LEN   21
 
#define CP_OPERATOR_STR   "operator"
 
#define CP_OPERATOR_LEN   8
 

Typedefs

typedef const char *() canonicalization_ftype(struct type *, void *)
 

Functions

std::string cp_canonicalize_string (const char *string)
 
std::string cp_canonicalize_string_no_typedefs (const char *string)
 
std::string cp_canonicalize_string_full (const char *string, canonicalization_ftype *finder, void *data)
 
char * cp_class_name_from_physname (const char *physname)
 
char * method_name_from_physname (const char *physname)
 
unsigned int cp_find_first_component (const char *name)
 
unsigned int cp_entire_prefix_len (const char *name)
 
char * cp_func_name (const char *full_name)
 
gdb::unique_xmalloc_ptr< char > cp_remove_params (const char *demanged_name)
 
gdb::unique_xmalloc_ptr< char > cp_remove_params_if_any (const char *demangled_name, bool completion_mode)
 
struct symbol ** make_symbol_overload_list (const char *, const char *)
 
struct symbol ** make_symbol_overload_list_adl (struct type **arg_types, int nargs, const char *func_name)
 
struct typecp_lookup_rtti_type (const char *name, struct block *block)
 
unsigned int cp_search_name_hash (const char *search_name)
 
symbol_name_matcher_ftypecp_get_symbol_name_matcher (const lookup_name_info &lookup_name)
 
int cp_is_in_anonymous (const char *symbol_name)
 
void cp_scan_for_anonymous_namespaces (const struct symbol *symbol, struct objfile *objfile)
 
struct block_symbol cp_lookup_symbol_nonlocal (const struct language_defn *langdef, const char *name, const struct block *block, const domain_enum domain)
 
struct block_symbol cp_lookup_symbol_namespace (const char *the_namespace, const char *name, const struct block *block, const domain_enum domain)
 
struct block_symbol cp_lookup_symbol_imports_or_template (const char *scope, const char *name, const struct block *block, const domain_enum domain)
 
struct block_symbol cp_lookup_nested_symbol (struct type *parent_type, const char *nested_name, const struct block *block, const domain_enum domain)
 
struct typecp_lookup_transparent_type (const char *name)
 
struct typecp_find_type_baseclass_by_name (struct type *parent_type, const char *name)
 
std::unique_ptr< demangle_parse_infocp_demangled_name_to_comp (const char *demangled_name, const char **errmsg)
 
gdb::unique_xmalloc_ptr< char > cp_comp_to_string (struct demangle_component *result, int estimated_len)
 
void cp_merge_demangle_parse_infos (struct demangle_parse_info *, struct demangle_component *, struct demangle_parse_info *)
 
char * gdb_demangle (const char *name, int options)
 
int gdb_sniff_from_mangled_name (const char *mangled, char **demangled)
 

Variables

struct cmd_list_elementmaint_cplus_cmd_list
 

Macro Definition Documentation

◆ CP_ANONYMOUS_NAMESPACE_LEN

#define CP_ANONYMOUS_NAMESPACE_LEN   21

Definition at line 47 of file cp-support.h.

Referenced by cp_scan_for_anonymous_namespaces().

◆ CP_ANONYMOUS_NAMESPACE_STR

#define CP_ANONYMOUS_NAMESPACE_STR   "(anonymous namespace)"

◆ CP_OPERATOR_LEN

#define CP_OPERATOR_LEN   8

◆ CP_OPERATOR_STR

#define CP_OPERATOR_STR   "operator"

Typedef Documentation

◆ canonicalization_ftype

typedef const char*() canonicalization_ftype(struct type *, void *)

Definition at line 82 of file cp-support.h.

Function Documentation

◆ cp_canonicalize_string()

std::string cp_canonicalize_string ( const char *  string)

◆ cp_canonicalize_string_full()

std::string cp_canonicalize_string_full ( const char *  string,
canonicalization_ftype finder,
void *  data 
)

◆ cp_canonicalize_string_no_typedefs()

std::string cp_canonicalize_string_no_typedefs ( const char *  string)

Definition at line 542 of file cp-support.c.

References cp_canonicalize_string_full().

Referenced by find_linespec_symbols(), and inspect_type().

◆ cp_class_name_from_physname()

char* cp_class_name_from_physname ( const char *  physname)

Definition at line 636 of file cp-support.c.

References cp_comp_to_string(), d_left, d_right, mangled_name_to_comp(), and xfree().

◆ cp_comp_to_string()

gdb::unique_xmalloc_ptr<char> cp_comp_to_string ( struct demangle_component *  result,
int  estimated_len 
)

◆ cp_demangled_name_to_comp()

std::unique_ptr<demangle_parse_info> cp_demangled_name_to_comp ( const char *  demangled_name,
const char **  errmsg 
)

◆ cp_entire_prefix_len()

unsigned int cp_entire_prefix_len ( const char *  name)

◆ cp_find_first_component()

unsigned int cp_find_first_component ( const char *  name)

◆ cp_find_type_baseclass_by_name()

struct type* cp_find_type_baseclass_by_name ( struct type parent_type,
const char *  name 
)

◆ cp_func_name()

char* cp_func_name ( const char *  full_name)

◆ cp_get_symbol_name_matcher()

symbol_name_matcher_ftype* cp_get_symbol_name_matcher ( const lookup_name_info lookup_name)

◆ cp_is_in_anonymous()

int cp_is_in_anonymous ( const char *  symbol_name)

◆ cp_lookup_nested_symbol()

struct block_symbol cp_lookup_nested_symbol ( struct type parent_type,
const char *  nested_name,
const struct block block,
const domain_enum  domain 
)

◆ cp_lookup_rtti_type()

struct type* cp_lookup_rtti_type ( const char *  name,
struct block block 
)

◆ cp_lookup_symbol_imports_or_template()

struct block_symbol cp_lookup_symbol_imports_or_template ( const char *  scope,
const char *  name,
const struct block block,
const domain_enum  domain 
)

◆ cp_lookup_symbol_namespace()

struct block_symbol cp_lookup_symbol_namespace ( const char *  the_namespace,
const char *  name,
const struct block block,
const domain_enum  domain 
)

◆ cp_lookup_symbol_nonlocal()

struct block_symbol cp_lookup_symbol_nonlocal ( const struct language_defn langdef,
const char *  name,
const struct block block,
const domain_enum  domain 
)

◆ cp_lookup_transparent_type()

struct type* cp_lookup_transparent_type ( const char *  name)

◆ cp_merge_demangle_parse_infos()

void cp_merge_demangle_parse_infos ( struct demangle_parse_info ,
struct demangle_component *  ,
struct demangle_parse_info  
)

◆ cp_remove_params()

gdb::unique_xmalloc_ptr<char> cp_remove_params ( const char *  demanged_name)

◆ cp_remove_params_if_any()

gdb::unique_xmalloc_ptr<char> cp_remove_params_if_any ( const char *  demangled_name,
bool  completion_mode 
)

Definition at line 900 of file cp-support.c.

References cp_remove_params_1(), and string.

Referenced by demangle_for_lookup_info::demangle_for_lookup_info().

◆ cp_scan_for_anonymous_namespaces()

void cp_scan_for_anonymous_namespaces ( const struct symbol symbol,
struct objfile objfile 
)

◆ cp_search_name_hash()

unsigned int cp_search_name_hash ( const char *  search_name)

◆ gdb_demangle()

char* gdb_demangle ( const char *  name,
int  options 
)

◆ gdb_sniff_from_mangled_name()

int gdb_sniff_from_mangled_name ( const char *  mangled,
char **  demangled 
)

Definition at line 1612 of file cp-support.c.

References gdb_demangle().

◆ make_symbol_overload_list()

struct symbol** make_symbol_overload_list ( const char *  ,
const char *   
)

◆ make_symbol_overload_list_adl()

struct symbol** make_symbol_overload_list_adl ( struct type **  arg_types,
int  nargs,
const char *  func_name 
)

◆ method_name_from_physname()

char* method_name_from_physname ( const char *  physname)

Variable Documentation

◆ maint_cplus_cmd_list

struct cmd_list_element* maint_cplus_cmd_list