Module: Rollgeist::RecordWatchpoints
- Defined in:
- lib/rollgeist/record_watchpoints.rb
Constant Summary collapse
- INSTALLED_IVAR =
:@__rollgeist_watchpoints- SERIALIZATION_BIT =
1- GLOBAL_ID_BIT =
2- SERIALIZATION_ALIAS =
:__rollgeist_original_serializable_hash- SERIALIZATION_STATE =
:@__rollgeist_serialization_visibility- GLOBAL_ID_ALIAS =
:__rollgeist_original_to_global_id- GLOBAL_ID_STATE =
:@__rollgeist_global_id_visibility- INHERITED =
:inherited
Class Method Summary collapse
Class Method Details
.install!(record) ⇒ Object
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/rollgeist/record_watchpoints.rb', line 16 def install!(record) return if record.instance_variable_defined?(INSTALLED_IVAR) mask = install_serialization(record) mask |= install_global_id(record) record.instance_variable_set(INSTALLED_IVAR, mask) rescue StandardError uninstall_mask(record, mask.to_i) raise end |
.uninstall!(record) ⇒ Object
27 28 29 30 31 32 33 |
# File 'lib/rollgeist/record_watchpoints.rb', line 27 def uninstall!(record) return unless record.instance_variable_defined?(INSTALLED_IVAR) mask = record.instance_variable_get(INSTALLED_IVAR) uninstall_mask(record, mask) record.remove_instance_variable(INSTALLED_IVAR) end |