Rx.SingleAssignmentDisposable
Represents a disposable resource which only allows a single assignment of its underlying disposable resource. If an underlying disposable resource has already been set, future attempts to set the underlying disposable resource will throw an Error.
Usage ##
The follow example shows the basic usage of an Rx.SingleAssignmentDisposable.
var singleDisposable = new Rx.SingleAssignmentDisposable();
var disposable = Rx.Disposable.create(() => console.log('disposed'));
singleDisposable.setDisposable(disposable);
singleDisposable.dispose();
// => disposedLocation
rx.js
SingleAssignmentDisposable Constructor ##
SingleAssignmentDisposable Constructor ##SingleAssignmentDisposable Instance Methods ##
SingleAssignmentDisposable Instance Methods ##SingleAssignmentDisposable Instance Properties ##
SingleAssignmentDisposable Instance Properties ##SingleAssignmentDisposable Constructor ##
Rx.SingleAssignmentDisposable()
Rx.SingleAssignmentDisposable()Initializes a new instance of the Rx.SingleAssignmentDisposable class.
Example
var singleDisposable = new Rx.SingleAssignmentDisposable();
console.log(singleDisposable.isDisposed);
// => falseLocation
rx.js
SingleAssignmentDisposable Instance Methods ##
Rx.SingleAssignmentDisposable.prototype.dispose()
Rx.SingleAssignmentDisposable.prototype.dispose()Disposes the underlying disposable.
Example
var singleDisposable = new Rx.SingleAssignmentDisposable();
var disposable = Rx.Disposable.create(() => console.log('disposed'));
singleDisposable.setDisposable(disposable);
console.log(singleDisposable.isDisposed);
// => false
singleDisposable.dispose();
// => disposed
console.log(singleDisposable.isDisposed);
// => trueLocation
rx.js
Rx.SingleAssignmentDisposable.prototype.getDisposable()
Rx.SingleAssignmentDisposable.prototype.getDisposable()Gets the underlying disposable. After disposal, the result of getting this method is undefined.
Returns
(Disposable): The underlying disposable.
Example
var singleDisposable = new Rx.SingleAssignmentDisposable();
var disposable = Rx.Disposable.create(() => console.log('disposed'));
singleDisposable.setDisposable(disposable);
var d = singleDisposable.getDisposable();
console.log(d === disposable);Location
rx.js
Rx.SingleAssignmentDisposable.prototype.setDisposable(value)
Rx.SingleAssignmentDisposable.prototype.setDisposable(value)Sets the underlying disposable.
Arguments
value(Disposable): The new underlying disposable.
Example
var singleDisposable = new Rx.SingleAssignmentDisposable();
var d1 = Rx.Disposable.create(() => console.log('one'));
singleDisposable.setDisposable(d1);
var d2 = Rx.Disposable.create(() => console.log('two'));
try {
singleDisposable.setDisposable(d2);
} catch (e) {
console.log(e.message);
}
// => Disposable has already been assignedLocation
rx.js
SingleAssignmentDisposable Instance Properties ##
isDisposed
isDisposedGets a value that indicates whether the object is disposed.
Example
var singleDisposable = new Rx.SingleAssignmentDisposable();
var disposable = Rx.Disposable.create(() => console.log('disposed'));
singleDisposable.setDisposable(disposable);
console.log(singleDisposable.isDisposed);
// => false
singleDisposable.dispose();
// => disposed
console.log(singleDisposable.isDisposed);
// => trueLocation
rx.js
Last updated
Was this helpful?