26#ifndef buf0block_hint_h
27#define buf0block_hint_h
53 auto res = f(buffer_fixed_block);
The database buffer pool global types for the directory.
Definition: buf0block_hint.h:31
void clear()
Clears currently stored pointer.
Definition: buf0block_hint.cc:37
void buffer_fix_block_if_still_valid()
A helper function which checks if m_block is not a dangling pointer and still points to block with pa...
Definition: buf0block_hint.cc:39
buf_block_t * m_block
The block pointer stored by store().
Definition: buf0block_hint.h:60
static void buffer_unfix_block_if_needed(buf_block_t *block)
A helper function which decrements block->buf_fix_count if it's non-null.
Definition: buf0block_hint.cc:85
page_id_t m_page_id
If m_block is non-null, the m_block->page.id at time it was stored.
Definition: buf0block_hint.h:62
auto run_with_hint(F &&f)
Executes given function with the block pointer which was previously stored or with nullptr if the poi...
Definition: buf0block_hint.h:48
void store(buf_block_t *block)
Stores the pointer to the block, which is currently buffer-fixed.
Definition: buf0block_hint.cc:31
Page identifier.
Definition: buf0types.h:206
Definition: buf0block_hint.cc:29
The buffer control block structure.
Definition: buf0buf.h:1750