module Anyolite::RbRefTable

Overview

This is a very simple approach to generate artificial references to the wrapped objects. Therefore, the GC won't delete the wrapped objects until necessary. Furthermore, this is only possible as a module due to C closure limitations.

TODO Add compilation option for ignoring entry checks

TODO Put the hash value union into a struct

Defined in:

RbRefTable.cr

Class Method Summary

Class Method Detail

def self.add(identification, value, rb_value) #

[View source]
def self.check_interpreter #

[View source]
def self.delete(identification) #

[View source]
def self.get(identification) #

[View source]
def self.get_current_interpreter : RbInterpreter #

[View source]
def self.get_object_id(value) #

TODO If a struct wrapper is given here, call the struct methods instead of the wrapper methods


[View source]
def self.get_rb_value(identification) #

[View source]
def self.inspect #

[View source]
def self.is_registered?(identification) #

[View source]
def self.may_delete?(identification) #

[View source]
def self.number_of_references #

[View source]
def self.option_active?(symbol) #

[View source]
def self.reset #

[View source]
def self.set_current_interpreter(interpreter : RbInterpreter) #

[View source]
def self.set_option(symbol) #

[View source]
def self.unset_option(symbol) #

[View source]