Spec-Zone.ru › ReactiveX

Все

определяет, соответствуют ли все элементы, испускаемые Observable, некоторым критериям
Открыть интерактивную диаграмму на rxmarbles.com

Передайте предикатную функцию оператору Все, которая принимает элемент, испускаемый исходным Observable, и возвращает логическое значение на основе оценки этого элемента. Все возвращает Observable, который испускает одно логическое значение: true тогда и только тогда, когда исходный Observable завершается нормально, и каждый элемент, испускаемый исходным Observable, оценивается как true в соответствии с этим предикатом; false если любой элемент, испускаемый исходным Observable, оценивается как false в соответствии с этим предикатом.

См. также

  • Введение в Rx: Все
  • RxMarbles: every

Информация, специфичная для языка

RxGroovy all

all

RxGroovy реализует этот оператор как all. По умолчанию он не работает на каком-либо конкретном Планировщике. Следующий пример демонстрирует, как использовать этот оператор:

Пример кода

numbers = Observable.from([1, 2, 3, 4, 5]);

println("all even?" )
numbers.all({ 0 == (it % 2) }).subscribe({ println(it); });

println("all positive?");
numbers.all({ 0 < it }).subscribe({ println(it); });
all even? 
false
all positive? 
true
  • Javadoc: all(Func1)

RxJava 1․x all

all

RxJava 1.x реализует этот оператор как all. По умолчанию он не работает на каком-либо конкретном Планировщике.

  • Javadoc: all(Func1)

RxJava 2․x all

all

RxJava 2.x реализует этот оператор как all. По умолчанию он не работает на каком-либо конкретном Планировщике.

  • Javadoc: all(Predicate)

RxJS every jortSort jortSortUntil

every

RxJS реализует этот оператор как every. Следующий пример демонстрирует, как использовать этот оператор:

Пример кода

var source = Rx.Observable.of(1,2,3,4,5)
  .every(function (x) {
    return x < 6;
  });

var subscription = source.subscribe(
  function (x) { console.log('Next: %s', x); },
  function (err) { console.log('Error: %s', err); },
  function () { console.log('Completed'); });
Next: true
Completed

every находится в следующих дистрибутивах:

  • rx.all.js
  • rx.all.compat.js
  • rx.aggregates.js

Он требует одного из следующих дистрибутивов:

  • rx.js
  • rx.compat.js
  • rx.lite.js
  • rx.lite.compat.js

Также есть оператор jortSort, который выполняет проверку на всей последовательности элементов, испускаемых исходным Observable. Если эти элементы испускаются в отсортированном порядке, после успешного завершения исходного Observable, Observable, возвращённый из jortSort, испустит true и затем завершится. Если любой из элементов, испускаемых исходным Observable, находится вне порядка сортировки, после успешного завершения исходного Observable, Observable, возвращённый из jortSort, испустит false и затем завершится.

Также есть оператор jortSortUntil. Он не ждёт завершения исходного Observable для оценки его последовательности на сортировку, как jortSort , а ждёт, пока второй Observable испустит элемент для этого.

См. также

  • jort.technology

Пример кода

var source = Rx.Observable.of(1,2,3,4) // already sorted
               .jortSort();

var subscription = source.subscribe(
  function (x) { console.log('Next: %s', x); },
  function (e) { console.log('Error: %s', e); },
  function ( ) { console.log('Completed'); });
Next: true
Completed
var source = Rx.Observable.of(3,1,2,4) // not sorted
               .jortSort();

var subscription = source.subscribe(
  function (x) { console.log('Next: %s', x); },
  function (e) { console.log('Error: %s', e); },
  function ( ) { console.log('Completed'); });
Next: false
Completed
var just = Rx.helpers.just;

var source = Rx.Observable.of(1,2,3,4) // already sorted
               .flatmap(function (x) {
                 return Rx.Observable.timer(1000).map(just(x));
               }).jortSortUntil(Rx.Observable.timer(3000);

var subscription = source.subscribe(
  function (x) { console.log('Next: %s', x); },
  function (e) { console.log('Error: %s', e); },
  function ( ) { console.log('Completed'); });
Next: true
Completed
var just = Rx.helpers.just;

var source = Rx.Observable.of(3,1,2,4) // not sorted
               .flatmap(function (x) {
                 return Rx.Observable.timer(1000).map(just(x));
               }).jortSortUntil(Rx.Observable.timer(3000);

var subscription = source.subscribe(
  function (x) { console.log('Next: %s', x); },
  function (e) { console.log('Error: %s', e); },
  function ( ) { console.log('Completed'); });
Next: false
Completed

jortSort и jortSortUntil находятся в следующем дистрибутиве:

  • rx.sorting.js

Они требуют одного из следующих дистрибутивов:

  • rx.js
  • rx.compat.js
  • rx.lite.js
  • rx.lite.compat.js

© ReactiveX contributors
Licensed under the Apache License 2.0.
http://reactivex.io/documentation/operators/all.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API