![]()  | 
  
    MySQL 8.0.44
    
   Source Code Documentation 
   | 
 
SQL evaluator: evaluates simple data structures, like expressions, in a query graph. More...
#include "pars0pars.h"#include "pars0sym.h"#include "que0types.h"#include "univ.i"#include "eval0eval.ic"Go to the source code of this file.
Functions | |
| void | eval_node_free_val_buf (que_node_t *node) | 
| Free the buffer from global dynamic memory for a value of a que_node, if it has been allocated in the above function.  More... | |
| static void | eval_sym (sym_node_t *sym_node) | 
| Evaluates a symbol table symbol.  More... | |
| static void | eval_exp (que_node_t *exp_node) | 
| Evaluates an expression.  More... | |
| static void | eval_node_set_int_val (que_node_t *node, lint val) | 
| Sets an integer value as the value of an expression node.  More... | |
| static lint | eval_node_get_int_val (que_node_t *node) | 
| Gets an integer value from an expression node.  More... | |
| static void | eval_node_copy_and_alloc_val (que_node_t *node, const byte *str, ulint len) | 
| Copies a binary string value as the value of a query graph node.  More... | |
| static void | eval_node_copy_val (que_node_t *node1, que_node_t *node2) | 
| Copies a query node value to another node.  More... | |
| static bool | eval_node_get_bool_val (que_node_t *node) | 
| Gets a boolean value from a query node.  More... | |
| bool | eval_cmp (func_node_t *cmp_node) | 
| Evaluates a comparison node.  More... | |
SQL evaluator: evaluates simple data structures, like expressions, in a query graph.
Created 12/29/1997 Heikki Tuuri
| bool eval_cmp | ( | func_node_t * | cmp_node | ) | 
Evaluates a comparison node.
| cmp_node | in: comparison node | 
      
  | 
  inlinestatic | 
Evaluates an expression.
in: expression
      
  | 
  inlinestatic | 
Copies a binary string value as the value of a query graph node.
Allocates a new buffer if necessary.
| [in] | node | query graph node | 
| [in] | str | binary string | 
| [in] | len | string length or UNIV_SQL_NULL | 
      
  | 
  inlinestatic | 
Copies a query node value to another node.
| [in] | node1 | node to copy to | 
| [in] | node2 | node to copy from | 
| void eval_node_free_val_buf | ( | que_node_t * | node | ) | 
Free the buffer from global dynamic memory for a value of a que_node, if it has been allocated in the above function.
The freeing for pushed column values is done in sel_col_prefetch_buf_free. in: query graph node
The freeing for pushed column values is done in sel_col_prefetch_buf_free.
| node | in: query graph node | 
      
  | 
  inlinestatic | 
Gets a boolean value from a query node.
      
  | 
  inlinestatic | 
Gets an integer value from an expression node.
      
  | 
  inlinestatic | 
Sets an integer value as the value of an expression node.
| [in] | node | expression node | 
| [in] | val | value to set | 
      
  | 
  inlinestatic | 
Evaluates a symbol table symbol.
in: symbol table node