GDB (API)
Classes | Defines | Typedefs | Enumerations | Functions | Variables
/home/stan/gdb/src/gdb/parser-defs.h File Reference
#include "doublest.h"
#include "vec.h"
#include "expression.h"

Go to the source code of this file.

Classes

struct  stoken
struct  typed_stoken
struct  stoken_vector
struct  ttype
struct  symtoken
struct  objc_class_str
union  type_stack_elt
struct  type_stack
struct  op_print
struct  exp_descriptor

Defines

#define parse_gdbarch   (expout->gdbarch)
#define parse_language   (expout->language_defn)

Typedefs

typedef struct typetype_ptr

Enumerations

enum  type_pieces {
  tp_end = -1, tp_pointer, tp_reference, tp_array,
  tp_function, tp_function_with_arguments, tp_const, tp_volatile,
  tp_space_identifier, tp_type_stack
}
enum  precedence {
  PREC_NULL, PREC_COMMA, PREC_ABOVE_COMMA, PREC_ASSIGN,
  PREC_LOGICAL_OR, PREC_LOGICAL_AND, PREC_BITWISE_IOR, PREC_BITWISE_AND,
  PREC_BITWISE_XOR, PREC_EQUAL, PREC_ORDER, PREC_SHIFT,
  PREC_ADD, PREC_MUL, PREC_REPEAT, PREC_HYPER,
  PREC_PREFIX, PREC_SUFFIX, PREC_BUILTIN_FUNCTION
}

Functions

 DEF_VEC_P (type_ptr)
void initialize_expout (int, const struct language_defn *, struct gdbarch *)
void reallocate_expout (void)
int prefixify_expression (struct expression *expr)
void write_exp_elt_opcode (enum exp_opcode)
void write_exp_elt_sym (struct symbol *)
void write_exp_elt_longcst (LONGEST)
void write_exp_elt_dblcst (DOUBLEST)
void write_exp_elt_decfloatcst (gdb_byte *)
void write_exp_elt_type (struct type *)
void write_exp_elt_intern (struct internalvar *)
void write_exp_string (struct stoken)
void write_exp_string_vector (int type, struct stoken_vector *vec)
void write_exp_bitstring (struct stoken)
void write_exp_elt_block (const struct block *)
void write_exp_elt_objfile (struct objfile *objfile)
void write_exp_msymbol (struct bound_minimal_symbol)
void write_dollar_variable (struct stoken str)
void mark_struct_expression (void)
const char * find_template_name_end (const char *)
void start_arglist (void)
int end_arglist (void)
char * copy_name (struct stoken)
void insert_type (enum type_pieces)
void push_type (enum type_pieces)
void push_type_int (int)
void insert_type_address_space (char *)
enum type_pieces pop_type (void)
int pop_type_int (void)
struct type_stackget_type_stack (void)
struct type_stackappend_type_stack (struct type_stack *to, struct type_stack *from)
void push_type_stack (struct type_stack *stack)
void type_stack_cleanup (void *arg)
void push_typelist (VEC(type_ptr)*typelist)
int length_of_subexp (struct expression *, int)
int dump_subexp (struct expression *, struct ui_file *, int)
int dump_subexp_body_standard (struct expression *, struct ui_file *, int)
void operator_length (const struct expression *, int, int *, int *)
void operator_length_standard (const struct expression *, int, int *, int *)
int operator_check_standard (struct expression *exp, int pos, int(*objfile_func)(struct objfile *objfile, void *data), void *data)
char * op_name_standard (enum exp_opcode)
struct typefollow_types (struct type *)
void null_post_parser (struct expression **, int)
int parse_float (const char *p, int len, DOUBLEST *d, const char **suffix)
int parse_c_float (struct gdbarch *gdbarch, const char *p, int len, DOUBLEST *d, struct type **t)
void print_subexp (struct expression *, int *, struct ui_file *, enum precedence)
void print_subexp_standard (struct expression *, int *, struct ui_file *, enum precedence)
void parser_fprintf (FILE *, const char *,...) ATTRIBUTE_PRINTF(2
void int exp_uses_objfile (struct expression *exp, struct objfile *objfile)
void mark_completion_tag (enum type_code, const char *ptr, int length)

Variables

int parser_debug
struct expressionexpout
int expout_size
int expout_ptr
struct blockexpression_context_block
CORE_ADDR expression_context_pc
struct blockinnermost_block
struct blockblock_found
int arglist_len
const char * lexptr
const char * prev_lexptr
int paren_depth
int comma_terminates
struct exp_descriptor exp_descriptor_standard

Define Documentation

#define parse_gdbarch   (expout->gdbarch)

Definition at line 38 of file parser-defs.h.

Definition at line 39 of file parser-defs.h.


Typedef Documentation

typedef struct type* type_ptr

Definition at line 111 of file parser-defs.h.


Enumeration Type Documentation

enum precedence
Enumerator:
PREC_NULL 
PREC_COMMA 
PREC_ABOVE_COMMA 
PREC_ASSIGN 
PREC_LOGICAL_OR 
PREC_LOGICAL_AND 
PREC_BITWISE_IOR 
PREC_BITWISE_AND 
PREC_BITWISE_XOR 
PREC_EQUAL 
PREC_ORDER 
PREC_SHIFT 
PREC_ADD 
PREC_MUL 
PREC_REPEAT 
PREC_HYPER 
PREC_PREFIX 
PREC_SUFFIX 
PREC_BUILTIN_FUNCTION 

Definition at line 289 of file parser-defs.h.

Enumerator:
tp_end 
tp_pointer 
tp_reference 
tp_array 
tp_function 
tp_function_with_arguments 
tp_const 
tp_volatile 
tp_space_identifier 
tp_type_stack 

Definition at line 116 of file parser-defs.h.


Function Documentation

struct type_stack* append_type_stack ( struct type_stack to,
struct type_stack from 
) [read]

Definition at line 1573 of file parse.c.

char* copy_name ( struct stoken  )

Definition at line 808 of file parse.c.

int dump_subexp ( struct expression ,
struct ui_file *  ,
int   
)

Definition at line 730 of file expprint.c.

int dump_subexp_body_standard ( struct expression ,
struct ui_file *  ,
int   
)

Definition at line 764 of file expprint.c.

int end_arglist ( void  )

Definition at line 162 of file parse.c.

void int exp_uses_objfile ( struct expression exp,
struct objfile objfile 
)

Definition at line 1905 of file parse.c.

const char* find_template_name_end ( const char *  )

Definition at line 737 of file parse.c.

struct type* follow_types ( struct type ) [read]

Definition at line 1637 of file parse.c.

struct type_stack* get_type_stack ( void  ) [read]

Definition at line 1599 of file parse.c.

void initialize_expout ( int  ,
const struct language_defn ,
struct gdbarch *   
)

Definition at line 194 of file parse.c.

void insert_type ( enum  type_pieces)

Definition at line 1472 of file parse.c.

void insert_type_address_space ( char *  )

Definition at line 1515 of file parse.c.

int length_of_subexp ( struct expression ,
int   
)

Definition at line 854 of file parse.c.

void mark_completion_tag ( enum  type_code,
const char *  ptr,
int  length 
)

Definition at line 602 of file parse.c.

void mark_struct_expression ( void  )

Definition at line 590 of file parse.c.

void null_post_parser ( struct expression **  ,
int   
)

Definition at line 1353 of file parse.c.

char* op_name_standard ( enum  exp_opcode)

Definition at line 664 of file expprint.c.

int operator_check_standard ( struct expression exp,
int  pos,
int(*)(struct objfile *objfile, void *data)  objfile_func,
void *  data 
)

Definition at line 1775 of file parse.c.

void operator_length ( const struct expression ,
int  ,
int ,
int  
)

Definition at line 874 of file parse.c.

void operator_length_standard ( const struct expression ,
int  ,
int ,
int  
)

Definition at line 884 of file parse.c.

int parse_c_float ( struct gdbarch *  gdbarch,
const char *  p,
int  len,
DOUBLEST d,
struct type **  t 
)

Definition at line 1393 of file parse.c.

int parse_float ( const char *  p,
int  len,
DOUBLEST d,
const char **  suffix 
)

Definition at line 1365 of file parse.c.

void parser_fprintf ( FILE *  ,
const char *  ,
  ... 
)
enum type_pieces pop_type ( void  )

Definition at line 1535 of file parse.c.

int pop_type_int ( void  )

Definition at line 1543 of file parse.c.

int prefixify_expression ( struct expression expr)

Definition at line 836 of file parse.c.

void print_subexp ( struct expression ,
int ,
struct ui_file *  ,
enum  precedence 
)

Definition at line 51 of file expprint.c.

void print_subexp_standard ( struct expression ,
int ,
struct ui_file *  ,
enum  precedence 
)

Definition at line 60 of file expprint.c.

void push_type ( enum  type_pieces)

Definition at line 1493 of file parse.c.

void push_type_int ( int  )

Definition at line 1500 of file parse.c.

void push_type_stack ( struct type_stack stack)

Definition at line 1587 of file parse.c.

void push_typelist ( VEC(type_ptr)*  typelist)

Definition at line 1627 of file parse.c.

void reallocate_expout ( void  )

Definition at line 208 of file parse.c.

void start_arglist ( void  )

Definition at line 147 of file parse.c.

void type_stack_cleanup ( void *  arg)

Definition at line 1614 of file parse.c.

void write_dollar_variable ( struct stoken  str)

Definition at line 641 of file parse.c.

void write_exp_bitstring ( struct stoken  )

Definition at line 460 of file parse.c.

void write_exp_elt_block ( const struct block )

Definition at line 259 of file parse.c.

Definition at line 289 of file parse.c.

void write_exp_elt_intern ( struct internalvar *  )

Definition at line 321 of file parse.c.

Definition at line 279 of file parse.c.

void write_exp_elt_objfile ( struct objfile objfile)

Definition at line 269 of file parse.c.

void write_exp_elt_opcode ( enum  exp_opcode)

Definition at line 239 of file parse.c.

void write_exp_elt_sym ( struct symbol )

Definition at line 249 of file parse.c.

void write_exp_elt_type ( struct type )

Definition at line 311 of file parse.c.

Definition at line 499 of file parse.c.

void write_exp_string ( struct stoken  )

Definition at line 352 of file parse.c.

void write_exp_string_vector ( int  type,
struct stoken_vector vec 
)

Definition at line 403 of file parse.c.


Variable Documentation

Definition at line 76 of file parse.c.

struct block* block_found

Definition at line 144 of file symtab.c.

Definition at line 81 of file parse.c.

Definition at line 59 of file parse.c.

struct expression* expout

Definition at line 70 of file parse.c.

Definition at line 72 of file parse.c.

Definition at line 71 of file parse.c.

Definition at line 73 of file parse.c.

Definition at line 74 of file parse.c.

Definition at line 75 of file parse.c.

const char* lexptr

Definition at line 78 of file parse.c.

Definition at line 80 of file parse.c.

Definition at line 108 of file parse.c.

Definition at line 79 of file parse.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines