Skip to content

Commit ed1b3c5

Browse files
authored
Merge pull request #171 from LoveCommunity/refactor/improve-internal-naming
refactor - improve naming in `ObservableCombine`
2 parents a68e0c7 + cda01b7 commit ed1b3c5

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

lib/src/dart_observable/observables/observable_combine.dart

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -87,20 +87,17 @@ class _Observation<T, R> extends Observation<R> {
8787

8888
late final int _observablesLength;
8989
late final Set<int> _emitted;
90-
late final List<T?> _latests;
91-
late final Disposable _disposable;
90+
late final List<T?> _latestItems;
91+
late final List<Disposable> _sourceObservations;
9292

9393
@override
9494
void init() {
9595
_observablesLength = _observables.length;
9696
_emitted = <int>{};
97-
_latests = List<T?>.filled(_observablesLength, null);
98-
final sourceObservations = Iterable<Disposable>
97+
_latestItems = List<T?>.filled(_observablesLength, null);
98+
_sourceObservations = Iterable<Disposable>
9999
.generate(_observablesLength, _observeIndexed)
100100
.toList();
101-
_disposable = Disposable.combine(
102-
disposables: sourceObservations
103-
);
104101
}
105102

106103
Disposable _observeIndexed(int index) {
@@ -113,9 +110,9 @@ class _Observation<T, R> extends Observation<R> {
113110
if (!_emitted.contains(index)) {
114111
_emitted.add(index);
115112
}
116-
_latests[index] = data;
113+
_latestItems[index] = data;
117114
if (_emitted.length == _observablesLength) {
118-
final items = List<T>.from(_latests, growable: false);
115+
final items = List<T>.from(_latestItems, growable: false);
119116
final combinedItem = _combiner(items);
120117
emit(combinedItem);
121118
}
@@ -124,6 +121,8 @@ class _Observation<T, R> extends Observation<R> {
124121

125122
@override
126123
void dispose() {
127-
_disposable.dispose();
124+
for (final observation in _sourceObservations.reversed) {
125+
observation.dispose();
126+
}
128127
}
129128
}

0 commit comments

Comments
 (0)