GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions
/tmp/gdb-13.1/gdb/expression.h File Reference
#include "gdbtypes.h"
#include "std-operator.def"

Go to the source code of this file.

Classes

class  expr::operation
 
struct  expression
 
struct  expr_completion_base
 

Namespaces

namespace  expr
 

Macros

#define OP(name)   name ,
 

Typedefs

typedef std::unique_ptr< operation > expr::operation_up
 
typedef std::unique_ptr< expressionexpression_up
 

Enumerations

enum  innermost_block_tracker_type { INNERMOST_BLOCK_FOR_SYMBOLS = (1 << 0) , INNERMOST_BLOCK_FOR_REGISTERS = (1 << 1) }
 
enum  exp_opcode : uint8_t
 
enum  noside { EVAL_NORMAL , EVAL_AVOID_SIDE_EFFECTS }
 
enum  range_flag : unsigned {
  RANGE_STANDARD = 0 , RANGE_LOW_BOUND_DEFAULT = 1 << 0 , RANGE_HIGH_BOUND_DEFAULT = 1 << 1 , RANGE_HIGH_BOUND_EXCLUSIVE = 1 << 2 ,
  RANGE_HAS_STRIDE = 1 << 3
}
 

Functions

 DEF_ENUM_FLAGS_TYPE (enum innermost_block_tracker_type, innermost_block_tracker_types)
 
template<typename T , typename... Arg>
operation_up expr::make_operation (Arg... args)
 
expression_up parse_expression (const char *, innermost_block_tracker *=nullptr, bool void_context_p=false)
 
expression_up parse_expression_with_language (const char *string, enum language lang)
 
expression_up parse_expression_for_completion (const char *, std::unique_ptr< expr_completion_base > *completer)
 
expression_up parse_exp_1 (const char **, CORE_ADDR pc, const struct block *, int, innermost_block_tracker *=nullptr)
 
struct valueevaluate_subexp_do_call (expression *exp, enum noside noside, value *callee, gdb::array_view< value * > argvec, const char *function_name, type *default_return_type)
 
const char * op_name (enum exp_opcode opcode)
 
 DEF_ENUM_FLAGS_TYPE (enum range_flag, range_flags)
 

Macro Definition Documentation

◆ OP

#define OP (   name)    name ,

Definition at line 45 of file expression.h.

Typedef Documentation

◆ expression_up

typedef std::unique_ptr<expression> expression_up

Definition at line 229 of file expression.h.

Enumeration Type Documentation

◆ exp_opcode

enum exp_opcode : uint8_t

Definition at line 43 of file expression.h.

◆ innermost_block_tracker_type

Enumerator
INNERMOST_BLOCK_FOR_SYMBOLS 
INNERMOST_BLOCK_FOR_REGISTERS 

Definition at line 32 of file expression.h.

◆ noside

enum noside
Enumerator
EVAL_NORMAL 
EVAL_AVOID_SIDE_EFFECTS 

Definition at line 54 of file expression.h.

◆ range_flag

enum range_flag : unsigned
Enumerator
RANGE_STANDARD 
RANGE_LOW_BOUND_DEFAULT 
RANGE_HIGH_BOUND_DEFAULT 
RANGE_HIGH_BOUND_EXCLUSIVE 
RANGE_HAS_STRIDE 

Definition at line 292 of file expression.h.

Function Documentation

◆ DEF_ENUM_FLAGS_TYPE() [1/2]

DEF_ENUM_FLAGS_TYPE ( enum  innermost_block_tracker_type,
innermost_block_tracker_types   
)

◆ DEF_ENUM_FLAGS_TYPE() [2/2]

DEF_ENUM_FLAGS_TYPE ( enum  range_flag,
range_flags   
)

◆ evaluate_subexp_do_call()

struct value * evaluate_subexp_do_call ( expression exp,
enum noside  noside,
value callee,
gdb::array_view< value * >  argvec,
const char *  function_name,
type default_return_type 
)

◆ op_name()

const char * op_name ( enum exp_opcode  opcode)

◆ parse_exp_1()

expression_up parse_exp_1 ( const char **  stringptr,
CORE_ADDR  pc,
const struct block block,
int  comma,
innermost_block_tracker tracker = nullptr 
)

◆ parse_expression()

expression_up parse_expression ( const char *  string,
innermost_block_tracker tracker = nullptr,
bool  void_context_p = false 
)

◆ parse_expression_for_completion()

expression_up parse_expression_for_completion ( const char *  string,
std::unique_ptr< expr_completion_base > *  completer 
)

Definition at line 578 of file parse.c.

References parse_exp_in_context().

Referenced by complete_expression().

◆ parse_expression_with_language()

expression_up parse_expression_with_language ( const char *  string,
enum language  lang 
)