diff options
Diffstat (limited to 'node_modules/rxjs/src/internal/BehaviorSubject.ts')
| -rw-r--r-- | node_modules/rxjs/src/internal/BehaviorSubject.ts | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/node_modules/rxjs/src/internal/BehaviorSubject.ts b/node_modules/rxjs/src/internal/BehaviorSubject.ts deleted file mode 100644 index 6540f13..0000000 --- a/node_modules/rxjs/src/internal/BehaviorSubject.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { Subject } from './Subject'; -import { Subscriber } from './Subscriber'; -import { Subscription } from './Subscription'; - -/** - * A variant of Subject that requires an initial value and emits its current - * value whenever it is subscribed to. - */ -export class BehaviorSubject<T> extends Subject<T> { - constructor(private _value: T) { - super(); - } - - get value(): T { - return this.getValue(); - } - - /** @internal */ - protected _subscribe(subscriber: Subscriber<T>): Subscription { - const subscription = super._subscribe(subscriber); - !subscription.closed && subscriber.next(this._value); - return subscription; - } - - getValue(): T { - const { hasError, thrownError, _value } = this; - if (hasError) { - throw thrownError; - } - this._throwIfClosed(); - return _value; - } - - next(value: T): void { - super.next((this._value = value)); - } -} |
