MySQL 9.0.0
Source Code Documentation
opt_trace.cc File Reference

Implementation of the Optimizer trace API (WL#5257) More...

#include "sql/opt_trace.h"
#include <stdio.h>
#include <new>
#include "dig_vec.h"
#include "lex_string.h"
#include "my_dbug.h"
#include "my_pointer_arithmetic.h"
#include "my_sys.h"
#include "mysql/components/services/bits/psi_bits.h"
#include "mysql/strings/int2str.h"
#include "mysql/strings/m_ctype.h"
#include "mysqld_error.h"
#include "nulls.h"
#include "prealloced_array.h"
#include "sql/current_thd.h"
#include "sql/enum_query_type.h"
#include "sql/handler.h"
#include "sql/item.h"
#include "sql/join_optimizer/optimizer_trace.h"
#include "sql/sql_class.h"
#include "sql/table.h"
#include "sql_string.h"
#include "string_with_len.h"

Classes

class  anonymous_namespace{opt_trace.cc}::Buffer
 A wrapper of class String, for storing query or trace. More...
 
class  Opt_trace_stmt
 The trace of one statement. More...
 

Namespaces

namespace  anonymous_namespace{opt_trace.cc}
 

Functions

char anonymous_namespace{opt_trace.cc}::opening_bracket (bool requires_key)
 
char anonymous_namespace{opt_trace.cc}::closing_bracket (bool requires_key)
 
static char * Escape (char c, char *buffer)
 Add an escape sequence to 'buffer' if 'c' is a character that should be escaped in optimizer trace. More...
 
template<class T >
T * new_nothrow_w_my_error ()
 
template<class T , class Arg >
T * new_nothrow_w_my_error (Arg a)
 

Variables

const char anonymous_namespace{opt_trace.cc}::brackets [] = {'[', '{', ']', '}'}
 opening and closing symbols for arrays ([])and objects ({}) More...
 
LEX_CSTRING anonymous_namespace{opt_trace.cc}::bool_as_text []
 human-readable names for boolean values More...
 
const char anonymous_namespace{opt_trace.cc}::my_spaces []
 

Detailed Description

Implementation of the Optimizer trace API (WL#5257)

Function Documentation

◆ Escape()

static char * Escape ( char  c,
char *  buffer 
)
static

Add an escape sequence to 'buffer' if 'c' is a character that should be escaped in optimizer trace.

Parameters
cThe character to escape.
bufferThe buffer in which to put the escape sequence.
Returns
The next free position in in 'buffer'.

◆ new_nothrow_w_my_error() [1/2]

template<class T >
T * new_nothrow_w_my_error ( )

◆ new_nothrow_w_my_error() [2/2]

template<class T , class Arg >
T * new_nothrow_w_my_error ( Arg  a)