diff options
Diffstat (limited to 'components/script/dom/bindings/js.rs')
-rw-r--r-- | components/script/dom/bindings/js.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/components/script/dom/bindings/js.rs b/components/script/dom/bindings/js.rs index 11aed4be9af..528b1213ccb 100644 --- a/components/script/dom/bindings/js.rs +++ b/components/script/dom/bindings/js.rs @@ -408,6 +408,12 @@ impl<T: Reflectable> MutNullableHeap<JS<T>> { } } + /// Gets the current value out of this object and sets it to `None`. + pub fn take(&self) -> Option<Root<T>> { + let value = self.get(); + self.set(None); + value + } } impl<T: Reflectable> PartialEq for MutNullableHeap<JS<T>> { |