A guard to register a given address with the GC. More...
|Address_Registration_Guard (VALUE *address)|
|Register an address with the GC. |
|Address_Registration_Guard (Object *object)|
|Register an Object with the GC. More...|
|Unregister an address/Object with the GC. More...|
|VALUE *||address () const|
|Get the address that is registered with the GC. |
|void||swap (Address_Registration_Guard &other)|
|Swap with another Address_Registration_Guard. |
|static void||disable ()|
A guard to register a given address with the GC.
Calls rb_gc_register_address upon construction and rb_gc_unregister_address upon destruction. For example:
Called during Ruby's exit process since we should not call rb_gc unregister_address there