![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
File-based list utilities. More...
Go to the source code of this file.
Classes | |
| struct | flst_bnode_t | 
| In-memory representation of flst_base_node_t.  More... | |
Namespaces | |
| namespace | bulk | 
| Used for bulk load of data.  | |
Typedefs | |
| typedef byte | flst_base_node_t | 
| typedef byte | flst_node_t | 
Functions | |
| static void | flst_init (flst_base_node_t *base, mtr_t *mtr) | 
| Initializes a list base node.  More... | |
| void | flst_add_last (flst_base_node_t *base, flst_node_t *node, mtr_t *mtr) | 
| Adds a node as the last node in a list.  More... | |
| void | flst_add_first (flst_base_node_t *base, flst_node_t *node, mtr_t *mtr) | 
| Adds a node as the first node in a list.  More... | |
| void | flst_remove (flst_base_node_t *base, flst_node_t *node2, mtr_t *mtr) | 
| Removes a node.  More... | |
| static ulint | flst_get_len (const flst_base_node_t *base) | 
| Get the length of a list.  More... | |
| static fil_addr_t | flst_get_first (const flst_base_node_t *base, mtr_t *mtr) | 
| Gets list first node address.  More... | |
| static fil_addr_t | flst_get_last (const flst_base_node_t *base, mtr_t *mtr) | 
| Gets list last node address.  More... | |
| static fil_addr_t | flst_get_next_addr (const flst_node_t *node, mtr_t *mtr) | 
| Gets list next node address.  More... | |
| static fil_addr_t | flst_get_prev_addr (const flst_node_t *node, mtr_t *mtr) | 
| Gets list prev node address.  More... | |
| static void | flst_write_addr (fil_faddr_t *faddr, fil_addr_t addr, mtr_t *mtr) | 
| Writes a file address.  More... | |
| static fil_addr_t | flst_read_addr (const fil_faddr_t *faddr, mtr_t *mtr) | 
| Reads a file address.  More... | |
| void | flst_validate (const flst_base_node_t *base, mtr_t *mtr1) | 
| Validates a file-based list.  More... | |
| void | flst_insert_after (flst_base_node_t *base, flst_node_t *node1, flst_node_t *node2, mtr_t *mtr) | 
| Inserts a node after another in a list.  More... | |
| void | flst_insert_before (flst_base_node_t *base, flst_node_t *node2, flst_node_t *node3, mtr_t *mtr) | 
| Inserts a node before another in a list.  More... | |
| std::ostream & | operator<< (std::ostream &out, const flst_bnode_t &obj) | 
| void | bulk::flst_init (flst_base_node_t *base) | 
| Initializes a list base node.  More... | |
| void | bulk::flst_insert_after (flst_base_node_t *base, flst_node_t *node1, flst_node_t *node2, std::vector< buf_block_t * > &blocks) | 
| Inserts a node after another in a list.  More... | |
| void | bulk::flst_write_addr (fil_faddr_t *faddr, fil_addr_t addr) | 
| Writes a file address.  More... | |
| void | bulk::flst_add_last (flst_base_node_t *base, flst_node_t *node, std::vector< buf_block_t * > &blocks) | 
| Adds a node as the last node in a list.  More... | |
| fil_addr_t | bulk::flst_get_first (const flst_base_node_t *base) | 
| Gets list first node address.  More... | |
| fil_addr_t | bulk::flst_get_prev_addr (const flst_node_t *node) | 
| Gets list prev node address.  More... | |
| fil_addr_t | bulk::flst_get_next_addr (const flst_node_t *node) | 
| Gets list next node address.  More... | |
| fil_addr_t | bulk::flst_read_addr (const fil_faddr_t *faddr) | 
| Reads a file address.  More... | |
| void | bulk::flst_remove (flst_base_node_t *base, flst_node_t *node2, std::vector< buf_block_t * > &blocks) | 
| Bulk load version.  More... | |
| byte * | bulk::fut_get_ptr (fil_addr_t addr, std::vector< buf_block_t * > &blocks) | 
| Gets a pointer to a file address.  More... | |
| fil_addr_t | bulk::flst_get_last (const flst_base_node_t *base) | 
| Gets list last node address.  More... | |
Variables | |
| constexpr ulint | FLST_BASE_NODE_SIZE = 4 + 2 * FIL_ADDR_SIZE | 
| constexpr ulint | FLST_NODE_SIZE = 2 * FIL_ADDR_SIZE | 
File-based list utilities.
Created 11/28/1995 Heikki Tuuri
| typedef byte flst_base_node_t | 
| typedef byte flst_node_t | 
| void flst_add_first | ( | flst_base_node_t * | base, | 
| flst_node_t * | node, | ||
| mtr_t * | mtr | ||
| ) | 
Adds a node as the first node in a list.
| [in] | base | Pointer to base node of list | 
| [in] | node | Node to add | 
| [in] | mtr | Mini-transaction handle | 
| void flst_add_last | ( | flst_base_node_t * | base, | 
| flst_node_t * | node, | ||
| mtr_t * | mtr | ||
| ) | 
Adds a node as the last node in a list.
| [in] | base | Pointer to base node of list | 
| [in] | node | Node to add | 
| [in] | mtr | Mini-transaction handle | 
      
  | 
  inlinestatic | 
Gets list first node address.
| [in] | base | Pointer to base node | 
| [in] | mtr | Mini-transaction handle | 
      
  | 
  inlinestatic | 
Gets list last node address.
| [in] | base | Pointer to base node | 
| [in] | mtr | Mini-transaction handle | 
      
  | 
  inlinestatic | 
Get the length of a list.
| [in] | base | base node | 
      
  | 
  inlinestatic | 
Gets list next node address.
| [in] | node | Pointer to node | 
| [in] | mtr | Mini-transaction handle | 
      
  | 
  inlinestatic | 
Gets list prev node address.
| [in] | node | Pointer to node | 
| [in] | mtr | Mini-transaction handle | 
      
  | 
  inlinestatic | 
Initializes a list base node.
| [in] | base | Pointer to base node | 
| [in] | mtr | Mini-transaction handle | 
| void flst_insert_after | ( | flst_base_node_t * | base, | 
| flst_node_t * | node1, | ||
| flst_node_t * | node2, | ||
| mtr_t * | mtr | ||
| ) | 
Inserts a node after another in a list.
| [in] | base | Pointer to base node of list | 
| [in] | node1 | Node to insert after | 
| [in] | node2 | Node to add | 
| [in] | mtr | Mini-transaction handle. | 
in: mini-transaction handle
| base | in: pointer to base node of list | 
| node1 | in: node to insert after | 
| node2 | in: node to add | 
| mtr | in: mini-transaction handle | 
| void flst_insert_before | ( | flst_base_node_t * | base, | 
| flst_node_t * | node2, | ||
| flst_node_t * | node3, | ||
| mtr_t * | mtr | ||
| ) | 
Inserts a node before another in a list.
| [in] | base | Pointer to base node of list | 
| [in] | node2 | Node to insert | 
| [in] | node3 | Node to insert before | 
| [in] | mtr | Mini-transaction handle. | 
in: mini-transaction handle
| base | in: pointer to base node of list | 
| node2 | in: node to insert | 
| node3 | in: node to insert before | 
| mtr | in: mini-transaction handle | 
      
  | 
  inlinestatic | 
Reads a file address.
| [in] | faddr | Pointer to file faddress | 
| [in] | mtr | Mini-transaction handle | 
| void flst_remove | ( | flst_base_node_t * | base, | 
| flst_node_t * | node2, | ||
| mtr_t * | mtr | ||
| ) | 
Removes a node.
| [in] | base | Pointer to base node of list | 
| [in] | node2 | Node to remove | 
| [in] | mtr | Mini-transaction handle | 
| void flst_validate | ( | const flst_base_node_t * | base, | 
| mtr_t * | mtr1 | ||
| ) | 
Validates a file-based list.
| [in] | base | pointer to base node of list | 
| [in] | mtr1 | mtr | 
      
  | 
  inlinestatic | 
Writes a file address.
| [in] | faddr | Pointer to file faddress | 
| [in] | addr | File address | 
| [in] | mtr | Mini-transaction handle | 
      
  | 
  inline | 
      
  | 
  constexpr | 
      
  | 
  constexpr |