defines the structure of the register variable in the root-set table. Inherits from the root_set_base.
More...
#include <register-root.hpp>
defines the structure of the register variable in the root-set table. Inherits from the root_set_base.
◆ register_root()
| register_root::register_root |
( |
header * |
var_ptr | ) |
|
creates the instance of the register variable
- Parameters
-
| var_ptr | - pointer to a header of the register variable on the heap. |
◆ accept()
| void register_root::accept |
( |
gc_visitor & |
visitor | ) |
|
|
overridevirtualnoexcept |
accepts the gc visitor.
- Parameters
-
| visitor | - reference to a gc visitor. Calls marking on the gc visitor for register variable element. |
Implements root_set_base.
◆ get_register_variable_unlocked()
| header * register_root::get_register_variable_unlocked |
( |
| ) |
|
|
privatenoexcept |
getter for the variable.
- Warning
- must be called when lock is held already.
- Returns
- pointer to a header of the variable.
◆ set_register_variable()
| void register_root::set_register_variable |
( |
header * |
var_ptr | ) |
|
|
noexcept |
setter for the register variable
- Parameters
-
| var_ptr | - pointer to a header of the variable on the heap. |
- Returns
- void
◆ garbage_collector
allowing gc to access getter for the variable.
◆ register_mutex
| std::mutex register_root::register_mutex |
|
mutableprivate |
used for register synchronization.
◆ register_variable
| header* register_root::register_variable |
|
private |
pointer to a header of the register variable on the heap.
The documentation for this class was generated from the following files: