@@ -32,6 +32,7 @@ mod find_map;
3232mod fold;
3333mod for_each;
3434mod fuse;
35+ mod ge;
3536mod gt;
3637mod inspect;
3738mod le;
@@ -58,6 +59,7 @@ use find::FindFuture;
5859use find_map:: FindMapFuture ;
5960use fold:: FoldFuture ;
6061use for_each:: ForEachFuture ;
62+ use ge:: GeFuture ;
6163use gt:: GtFuture ;
6264use le:: LeFuture ;
6365use lt:: LtFuture ;
@@ -1240,6 +1242,7 @@ extension_trait! {
12401242 #
12411243 use async_std::prelude::*;
12421244 use std::collections::VecDeque;
1245+
12431246 use std::cmp::Ordering;
12441247
12451248 let s1 = VecDeque::from(vec![1]);
@@ -1267,6 +1270,43 @@ extension_trait! {
12671270 PartialCmpFuture :: new( self , other)
12681271 }
12691272
1273+
1274+ #[ doc = r#"
1275+ Determines if the elements of this `Stream` are lexicographically
1276+ greater than or equal to those of another.
1277+
1278+ # Examples
1279+
1280+ ```
1281+ # fn main() { async_std::task::block_on(async {
1282+ #
1283+ use async_std::prelude::*;
1284+ use std::collections::VecDeque;
1285+
1286+ let single: VecDeque<isize> = vec![1].into_iter().collect();
1287+ let single_gt: VecDeque<isize> = vec![10].into_iter().collect();
1288+ let multi: VecDeque<isize> = vec![1,2].into_iter().collect();
1289+ let multi_gt: VecDeque<isize> = vec![1,5].into_iter().collect();
1290+ assert_eq!(single.clone().ge(single.clone()).await, true);
1291+ assert_eq!(single_gt.clone().ge(single.clone()).await, true);
1292+ assert_eq!(multi.clone().ge(single_gt.clone()).await, false);
1293+ assert_eq!(multi_gt.clone().ge(multi.clone()).await, true);
1294+ #
1295+ # }) }
1296+ ```
1297+ "# ]
1298+ fn ge<S >(
1299+ self ,
1300+ other: S
1301+ ) -> impl Future <Output = bool > [ GeFuture <Self , S >]
1302+ where
1303+ Self : Sized + Stream ,
1304+ S : Stream ,
1305+ <Self as Stream >:: Item : PartialOrd <S :: Item >,
1306+ {
1307+ GeFuture :: new( self , other)
1308+ }
1309+
12701310 #[ doc = r#"
12711311 Determines if the elements of this `Stream` are lexicographically
12721312 greater than those of another.
0 commit comments