mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-09-09 11:13:57 +08:00
created new Stream.Map interface, fixing build failures
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
// <reference file="streamjs.d.ts" />
|
||||
/// <reference path="streamjs.d.ts" />
|
||||
|
||||
var numStream: Stream<number>;
|
||||
numStream = Stream.of(1, 2, 3);
|
||||
@@ -12,11 +12,11 @@ Stream.generate(() => 1);
|
||||
|
||||
numStream = Stream.iterate(1, (n) => n * 2);
|
||||
|
||||
var comparator = (s1, s2) => 0;
|
||||
var comparator = (s1: string, s2: string) => 0;
|
||||
|
||||
numStream = numStream.filter(n => n % 2 == 0);
|
||||
var strStream = numStream
|
||||
.dropWhile((n) => n % 2 == 0)
|
||||
.dropWhile((n: number) => n % 2 == 0)
|
||||
.map(n => "number " + n)
|
||||
.dropWhile(/^$/)
|
||||
.limit(100)
|
||||
@@ -77,7 +77,7 @@ class MyList {
|
||||
|
||||
var elems: any[];
|
||||
|
||||
var myStream = Stream.from([new MyList, new MyList]);
|
||||
var myStream: Stream<MyList> = Stream.from([new MyList, new MyList]);
|
||||
elems = myStream
|
||||
.flatMap(list => list.elems)
|
||||
.toArray();
|
||||
@@ -102,7 +102,7 @@ groupingResult = myStream.groupingBy(lst => lst.name);
|
||||
groupingResult = myStream.groupBy("name");
|
||||
groupingResult = myStream.groupingBy("name");
|
||||
|
||||
var mappingResult = myStream.toMap(lst => lst.name, (e1, e2) => e2);
|
||||
var mappingResult = myStream.toMap((lst) => lst.name, (e1: MyList, e2: MyList) => e2);
|
||||
var aMappingResult: MyList = mappingResult["a"];
|
||||
|
||||
mappingResult = myStream.toMap("a");
|
||||
|
||||
Vendored
+9
-4
@@ -40,7 +40,7 @@ declare class Stream<T> {
|
||||
groupBy(path: string): Stream.GroupingResult<T>;
|
||||
groupingBy(mapper: Stream.Function<T, string>): Stream.GroupingResult<T>;
|
||||
groupingBy(path: string): Stream.GroupingResult<T>;
|
||||
indexBy(keyMapper: Stream.Function<T, string>, mergeFunction?: Stream.Accumulator<T>): T[];
|
||||
indexBy(keyMapper: Stream.Function<T, string>, mergeFunction?: Stream.Accumulator<T>): Stream.Map<T>;
|
||||
map <U> (mapper: Stream.Function<T, U>): Stream<U>;
|
||||
max(): Stream.Optional<T>;
|
||||
max(comparator: Stream.Comparator<T>): Stream.Optional<T>;
|
||||
@@ -80,7 +80,7 @@ declare class Stream<T> {
|
||||
sort(path: string): Stream<T>;
|
||||
shuffle(): Stream<T>;
|
||||
skip(n: number): Stream<T>;
|
||||
slice(begin, end): Stream<T>;
|
||||
slice(begin: number, end: number): Stream<T>;
|
||||
sum(): number;
|
||||
sum(path: string): number;
|
||||
takeWhile(predicate: Stream.Predicate<T>): Stream<T>;
|
||||
@@ -88,12 +88,17 @@ declare class Stream<T> {
|
||||
takeWhile(sample: Stream.Sample): Stream<T>;
|
||||
toArray(): T[];
|
||||
toList(): T[];
|
||||
toMap(keyMapper: Stream.Function<T, string>, mergeFunction?: Stream.Accumulator<T>): T[];
|
||||
toMap(path: string, mergeFunction?: Stream.Accumulator<T>): T[];
|
||||
toMap(keyMapper: Stream.Function<T, string>, mergeFunction?: Stream.Accumulator<T>): Stream.Map<T>;
|
||||
toMap(path: string, mergeFunction?: Stream.Accumulator<T>): Stream.Map<T>;
|
||||
}
|
||||
|
||||
declare module Stream {
|
||||
|
||||
export interface Map<T> {
|
||||
[index: string]: T
|
||||
}
|
||||
|
||||
|
||||
export interface Sample {
|
||||
[index: string]: any
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user