GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Typedefs | Functions | Variables
cp-support.h File Reference
#include "symtab.h"
#include "gdbsupport/gdb_vecs.h"
#include "gdbsupport/gdb_obstack.h"
#include "gdbsupport/array-view.h"
#include <vector>

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

gdb::unique_xmalloc_ptr< char > cp_canonicalize_string (const char *string)
 
gdb::unique_xmalloc_ptr< char > cp_canonicalize_string_no_typedefs (const char *string)
 
gdb::unique_xmalloc_ptr< char > 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)
 
gdb::unique_xmalloc_ptr< 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)
 
std::vector< symbol * > make_symbol_overload_list (const char *, const char *)
 
void add_symbol_overload_list_adl (gdb::array_view< type * > arg_types, const char *func_name, std::vector< symbol * > *overload_list)
 
struct typecp_lookup_rtti_type (const char *name, const 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 (struct buildsym_compunit *, 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, std::string *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 *)
 
gdb::unique_xmalloc_ptr< char > gdb_demangle (const char *name, int options)
 
char * gdb_cplus_demangle_print (int options, struct demangle_component *tree, int estimated_length, size_t *p_allocated_size)
 
const char * find_toplevel_char (const char *s, char c)
 

Variables

struct cmd_list_elementmaint_cplus_cmd_list
 

Macro Definition Documentation

◆ CP_ANONYMOUS_NAMESPACE_LEN

#define CP_ANONYMOUS_NAMESPACE_LEN   21

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

◆ CP_ANONYMOUS_NAMESPACE_STR

#define CP_ANONYMOUS_NAMESPACE_STR   "(anonymous namespace)"

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

◆ CP_OPERATOR_LEN

#define CP_OPERATOR_LEN   8

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

◆ CP_OPERATOR_STR

#define CP_OPERATOR_STR   "operator"

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

Typedef Documentation

◆ canonicalization_ftype

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

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

Function Documentation

◆ add_symbol_overload_list_adl()

void add_symbol_overload_list_adl ( gdb::array_view< type * >  arg_types,
const char *  func_name,
std::vector< symbol * > *  overload_list 
)

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

References add_symbol_overload_list_adl_namespace().

Referenced by find_oload_champ_namespace_loop().

◆ cp_canonicalize_string()

gdb::unique_xmalloc_ptr< char > cp_canonicalize_string ( const char *  string)

◆ cp_canonicalize_string_full()

gdb::unique_xmalloc_ptr< char > cp_canonicalize_string_full ( const char *  string,
canonicalization_ftype finder,
void *  data 
)

◆ cp_canonicalize_string_no_typedefs()

gdb::unique_xmalloc_ptr< char > cp_canonicalize_string_no_typedefs ( const char *  string)

◆ cp_class_name_from_physname()

char * cp_class_name_from_physname ( const char *  physname)

◆ 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,
std::string *  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()

gdb::unique_xmalloc_ptr< 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,
const 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 dest,
struct demangle_component *  target,
struct demangle_parse_info src 
)

◆ 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 966 of file cp-support.c.

References cp_remove_params_1().

Referenced by demangle_for_lookup_info::demangle_for_lookup_info().

◆ cp_scan_for_anonymous_namespaces()

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

◆ cp_search_name_hash()

unsigned int cp_search_name_hash ( const char *  search_name)

◆ find_toplevel_char()

const char * find_toplevel_char ( const char *  s,
char  c 
)

◆ gdb_cplus_demangle_print()

char * gdb_cplus_demangle_print ( int  options,
struct demangle_component *  tree,
int  estimated_length,
size_t *  p_allocated_size 
)

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

Referenced by cp_comp_to_string().

◆ gdb_demangle()

gdb::unique_xmalloc_ptr< char > gdb_demangle ( const char *  name,
int  options 
)

◆ make_symbol_overload_list()

std::vector< symbol * > make_symbol_overload_list ( const char *  func_name,
const char *  the_namespace 
)

◆ 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
extern

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