Skip to content

Improve Streams #750

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
Nov 14, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 15 additions & 5 deletions baselines/dom.generated.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1496,6 +1496,16 @@ interface RTCTransportStats extends RTCStats {
selectedCandidatePairId?: string;
}

interface ReadableStreamReadDoneResult<T> {
done: true;
value?: T;
}

interface ReadableStreamReadValueResult<T> {
done: false;
value: T;
}

interface RegistrationOptions {
scope?: string;
type?: WorkerType;
Expand Down Expand Up @@ -12707,11 +12717,6 @@ interface ReadableStreamDefaultReader<R = any> {
releaseLock(): void;
}

interface ReadableStreamReadResult<T> {
done: boolean;
value: T;
}

interface ReadableStreamReader<R = any> {
cancel(): Promise<void>;
read(): Promise<ReadableStreamReadResult<R>>;
Expand Down Expand Up @@ -15660,6 +15665,8 @@ interface TextDecoderCommon {
}

interface TextDecoderStream extends GenericTransformStream, TextDecoderCommon {
readonly readable: ReadableStream<string>;
readonly writable: WritableStream<BufferSource>;
}

declare var TextDecoderStream: {
Expand Down Expand Up @@ -15692,6 +15699,8 @@ interface TextEncoderCommon {
}

interface TextEncoderStream extends GenericTransformStream, TextEncoderCommon {
readonly readable: ReadableStream<Uint8Array>;
readonly writable: WritableStream<string>;
}

declare var TextEncoderStream: {
Expand Down Expand Up @@ -19967,6 +19976,7 @@ type ConstrainDouble = number | ConstrainDoubleRange;
type ConstrainBoolean = boolean | ConstrainBooleanParameters;
type ConstrainDOMString = string | string[] | ConstrainDOMStringParameters;
type PerformanceEntryList = PerformanceEntry[];
type ReadableStreamReadResult<T> = ReadableStreamReadValueResult<T> | ReadableStreamReadDoneResult<T>;
type VibratePattern = number | number[];
type COSEAlgorithmIdentifier = number;
type AuthenticatorSelectionList = AAGUID[];
Expand Down
20 changes: 15 additions & 5 deletions baselines/webworker.generated.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -371,6 +371,16 @@ interface QueuingStrategy<T = any> {
size?: QueuingStrategySizeCallback<T>;
}

interface ReadableStreamReadDoneResult<T> {
done: true;
value?: T;
}

interface ReadableStreamReadValueResult<T> {
done: false;
value: T;
}

interface RegistrationOptions {
scope?: string;
type?: WorkerType;
Expand Down Expand Up @@ -2760,11 +2770,6 @@ interface ReadableStreamDefaultReader<R = any> {
releaseLock(): void;
}

interface ReadableStreamReadResult<T> {
done: boolean;
value: T;
}

interface ReadableStreamReader<R = any> {
cancel(): Promise<void>;
read(): Promise<ReadableStreamReadResult<R>>;
Expand Down Expand Up @@ -3083,6 +3088,8 @@ interface TextDecoderCommon {
}

interface TextDecoderStream extends GenericTransformStream, TextDecoderCommon {
readonly readable: ReadableStream<string>;
readonly writable: WritableStream<BufferSource>;
}

declare var TextDecoderStream: {
Expand Down Expand Up @@ -3115,6 +3122,8 @@ interface TextEncoderCommon {
}

interface TextEncoderStream extends GenericTransformStream, TextEncoderCommon {
readonly readable: ReadableStream<Uint8Array>;
readonly writable: WritableStream<string>;
}

declare var TextEncoderStream: {
Expand Down Expand Up @@ -5804,6 +5813,7 @@ type ImageBitmapSource = CanvasImageSource | Blob | ImageData;
type TimerHandler = string | Function;
type PerformanceEntryList = PerformanceEntry[];
type PushMessageDataInit = BufferSource | string;
type ReadableStreamReadResult<T> = ReadableStreamReadValueResult<T> | ReadableStreamReadDoneResult<T>;
type VibratePattern = number | number[];
type AlgorithmIdentifier = string | Algorithm;
type HashAlgorithmIdentifier = AlgorithmIdentifier;
Expand Down
32 changes: 32 additions & 0 deletions inputfiles/addedTypes.json
Original file line number Diff line number Diff line change
Expand Up @@ -2190,6 +2190,38 @@
}
}
}
},
"TextDecoderStream": {
"properties": {
"property": {
"readable": {
"name": "readable",
"read-only": 1,
"override-type": "ReadableStream<string>"
},
"writable": {
"name": "writable",
"read-only": 1,
"override-type": "WritableStream<BufferSource>"
}
}
}
},
"TextEncoderStream": {
"properties": {
"property": {
"readable": {
"name": "readable",
"read-only": 1,
"override-type": "ReadableStream<Uint8Array>"
},
"writable": {
"name": "writable",
"read-only": 1,
"override-type": "WritableStream<string>"
}
}
}
}
}
},
Expand Down
42 changes: 27 additions & 15 deletions inputfiles/idl/Streams.widl
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,21 @@ dictionary PipeOptions {
AbortSignal? signal;
};

[Exposed=(Window,Worker)]
interface ReadableStreamReadResult {
attribute boolean done;
attribute any value;
dictionary ReadableStreamReadValueResult {
required boolean done;
required any value;
};

[Constructor(ReadableStream stream),
Exposed=(Window,Worker)]
dictionary ReadableStreamReadDoneResult {
required boolean done;
any value;
};

[Exposed=(Window,Worker)]
typedef (ReadableStreamReadValueResult or ReadableStreamReadDoneResult) ReadableStreamReadResult;

[Exposed=(Window,Worker),
NoInterfaceObject]
interface ReadableStreamDefaultReader {
readonly attribute Promise<void> closed;

Expand All @@ -62,8 +69,8 @@ interface ReadableStreamDefaultReader {
void releaseLock();
};

[Constructor(ReadableStream stream),
Exposed=(Window,Worker)]
[Exposed=(Window,Worker),
NoInterfaceObject]
interface ReadableStreamBYOBReader {
readonly attribute Promise<void> closed;

Expand All @@ -72,7 +79,8 @@ interface ReadableStreamBYOBReader {
void releaseLock();
};

[Exposed=(Window,Worker)]
[Exposed=(Window,Worker),
NoInterfaceObject]
interface ReadableStreamDefaultController {
readonly attribute unrestricted double? desiredSize;

Expand All @@ -81,7 +89,8 @@ interface ReadableStreamDefaultController {
void error(optional any error);
};

[Exposed=(Window,Worker)]
[Exposed=(Window,Worker),
NoInterfaceObject]
interface ReadableByteStreamController {
readonly attribute ReadableStreamBYOBRequest byobRequest;
readonly attribute unrestricted double? desiredSize;
Expand All @@ -91,7 +100,8 @@ interface ReadableByteStreamController {
void error(optional any error);
};

[Exposed=(Window,Worker)]
[Exposed=(Window,Worker),
NoInterfaceObject]
interface ReadableStreamBYOBRequest {
readonly attribute ArrayBufferView view;

Expand Down Expand Up @@ -121,8 +131,8 @@ dictionary UnderlyingSink {
any type;
};

[Constructor(ReadableStream stream),
Exposed=(Window,Worker)]
[Exposed=(Window,Worker),
NoInterfaceObject]
interface WritableStreamDefaultWriter {
readonly attribute Promise<void> closed;
readonly attribute unrestricted double? desiredSize;
Expand All @@ -134,7 +144,8 @@ interface WritableStreamDefaultWriter {
Promise<void> write(any chunk);
};

[Exposed=(Window,Worker)]
[Exposed=(Window,Worker),
NoInterfaceObject]
interface WritableStreamDefaultController {
void error(optional any error);
};
Expand All @@ -158,7 +169,8 @@ dictionary Transformer {
any writableType;
};

[Exposed=(Window,Worker)]
[Exposed=(Window,Worker),
NoInterfaceObject]
interface TransformStreamDefaultController {
readonly attribute unrestricted double? desiredSize;

Expand Down
Loading