Skip to content
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
5 changes: 4 additions & 1 deletion Jakefile.js
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,10 @@ var es2016LibrarySourceMap = es2016LibrarySource.map(function (source) {
return { target: "lib." + source, sources: ["header.d.ts", source] };
});

var es2017LibrarySource = ["es2017.object.d.ts"];
var es2017LibrarySource = [
"es2017.object.d.ts",
"es2017.sharedmemory.d.ts"
];

var es2017LibrarySourceMap = es2017LibrarySource.map(function (source) {
return { target: "lib." + source, sources: ["header.d.ts", source] };
Expand Down
3 changes: 2 additions & 1 deletion src/compiler/commandLineParser.ts
Original file line number Diff line number Diff line change
Expand Up @@ -391,7 +391,8 @@ namespace ts {
"es2015.symbol": "lib.es2015.symbol.d.ts",
"es2015.symbol.wellknown": "lib.es2015.symbol.wellknown.d.ts",
"es2016.array.include": "lib.es2016.array.include.d.ts",
"es2017.object": "lib.es2017.object.d.ts"
"es2017.object": "lib.es2017.object.d.ts",
"es2017.sharedmemory": "lib.es2017.sharedmemory.d.ts"
},
},
description: Diagnostics.Specify_library_files_to_be_included_in_the_compilation_Colon
Expand Down
3 changes: 2 additions & 1 deletion src/lib/es2017.d.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
/// <reference path="lib.es2016.d.ts" />
/// <reference path="lib.es2017.object.d.ts" />
/// <reference path="lib.es2017.object.d.ts" />
/// <reference path="lib.es2017.sharedmemory.d.ts" />
27 changes: 27 additions & 0 deletions src/lib/es2017.sharedmemory.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/// <reference path="lib.es2015.symbol.d.ts" />
/// <reference path="lib.es2015.symbol.wellknown.d.ts" />

interface SharedArrayBuffer {
/**
* Read-only. The length of the ArrayBuffer (in bytes).
*/
readonly byteLength: number;

/*
* The SharedArrayBuffer constructor's length property whose value is 1.
*/
length: number;
/**
* Returns a section of an SharedArrayBuffer.
*/
slice(begin:number, end?:number): SharedArrayBuffer;
readonly [Symbol.species]: SharedArrayBuffer;
readonly [Symbol.toStringTag]: "SharedArrayBuffer";
}

interface SharedArrayBufferConstructor {
readonly prototype: SharedArrayBuffer;
new (byteLength: number): SharedArrayBuffer;
}

declare var SharedArrayBuffer: SharedArrayBufferConstructor;
Original file line number Diff line number Diff line change
Expand Up @@ -562,9 +562,9 @@ class ListWrapper {
>ListWrapper : Symbol(ListWrapper, Decl(staticAnonymousTypeNotReferencingTypeParameter.ts, 38, 1))
>l : Symbol(l, Decl(staticAnonymousTypeNotReferencingTypeParameter.ts, 113, 43))
>T : Symbol(T, Decl(staticAnonymousTypeNotReferencingTypeParameter.ts, 113, 16))
>JSON.stringify : Symbol(JSON.stringify, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
>JSON.stringify : Symbol(JSON.stringify, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
>JSON : Symbol(JSON, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
>stringify : Symbol(JSON.stringify, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
>stringify : Symbol(JSON.stringify, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
>l : Symbol(l, Decl(staticAnonymousTypeNotReferencingTypeParameter.ts, 113, 43))

static maximum<T>(dit: typeof ListWrapper, list: T[], predicate: (t: T) => number): T {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -662,9 +662,9 @@ class ListWrapper {
>l : T[]
>T : T
>JSON.stringify(l) : string
>JSON.stringify : { (value: any): string; (value: any, replacer: (key: string, value: any) => any): string; (value: any, replacer: any[]): string; (value: any, replacer: (key: string, value: any) => any, space: string | number): string; (value: any, replacer: any[], space: string | number): string; }
>JSON.stringify : { (value: any, replacer?: (key: string, value: any) => any, space?: string | number): string; (value: any, replacer?: (number | string)[], space?: string | number): string; }
>JSON : JSON
>stringify : { (value: any): string; (value: any, replacer: (key: string, value: any) => any): string; (value: any, replacer: any[]): string; (value: any, replacer: (key: string, value: any) => any, space: string | number): string; (value: any, replacer: any[], space: string | number): string; }
>stringify : { (value: any, replacer?: (key: string, value: any) => any, space?: string | number): string; (value: any, replacer?: (number | string)[], space?: string | number): string; }
>l : T[]

static maximum<T>(dit: typeof ListWrapper, list: T[], predicate: (t: T) => number): T {
Expand Down
10 changes: 10 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer1.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//// [useSharedArrayBuffer1.ts]

var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;

//// [useSharedArrayBuffer1.js]
var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;
18 changes: 18 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer1.symbols
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer1.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : Symbol(foge, Decl(useSharedArrayBuffer1.ts, 1, 3))
>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --))

var bar = foge.slice(1, 10);
>bar : Symbol(bar, Decl(useSharedArrayBuffer1.ts, 2, 3))
>foge.slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --))
>foge : Symbol(foge, Decl(useSharedArrayBuffer1.ts, 1, 3))
>slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --))

var len = foge.byteLength;
>len : Symbol(len, Decl(useSharedArrayBuffer1.ts, 3, 3))
>foge.byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --))
>foge : Symbol(foge, Decl(useSharedArrayBuffer1.ts, 1, 3))
>byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --))

23 changes: 23 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer1.types
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer1.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : SharedArrayBuffer
>new SharedArrayBuffer(1024) : SharedArrayBuffer
>SharedArrayBuffer : SharedArrayBufferConstructor
>1024 : number

var bar = foge.slice(1, 10);
>bar : SharedArrayBuffer
>foge.slice(1, 10) : SharedArrayBuffer
>foge.slice : (begin: number, end?: number) => SharedArrayBuffer
>foge : SharedArrayBuffer
>slice : (begin: number, end?: number) => SharedArrayBuffer
>1 : number
>10 : number

var len = foge.byteLength;
>len : number
>foge.byteLength : number
>foge : SharedArrayBuffer
>byteLength : number

10 changes: 10 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer2.errors.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
tests/cases/conformance/es2017/useSharedArrayBuffer2.ts(2,16): error TS2304: Cannot find name 'SharedArrayBuffer'.


==== tests/cases/conformance/es2017/useSharedArrayBuffer2.ts (1 errors) ====

var foge = new SharedArrayBuffer(1024);
~~~~~~~~~~~~~~~~~
!!! error TS2304: Cannot find name 'SharedArrayBuffer'.
var bar = foge.slice(1, 10);
var len = foge.byteLength;
10 changes: 10 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer2.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//// [useSharedArrayBuffer2.ts]

var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;

//// [useSharedArrayBuffer2.js]
var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;
10 changes: 10 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer3.errors.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
tests/cases/conformance/es2017/useSharedArrayBuffer3.ts(2,16): error TS2304: Cannot find name 'SharedArrayBuffer'.


==== tests/cases/conformance/es2017/useSharedArrayBuffer3.ts (1 errors) ====

var foge = new SharedArrayBuffer(1024);
~~~~~~~~~~~~~~~~~
!!! error TS2304: Cannot find name 'SharedArrayBuffer'.
var bar = foge.slice(1, 10);
var len = foge.byteLength;
10 changes: 10 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer3.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//// [useSharedArrayBuffer3.ts]

var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;

//// [useSharedArrayBuffer3.js]
var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;
14 changes: 14 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer4.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
//// [useSharedArrayBuffer4.ts]

var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var species = foge[Symbol.species];
var stringTag = foge[Symbol.toStringTag];
var len = foge.byteLength;

//// [useSharedArrayBuffer4.js]
var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var species = foge[Symbol.species];
var stringTag = foge[Symbol.toStringTag];
var len = foge.byteLength;
32 changes: 32 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer4.symbols
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer4.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3))
>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --))

var bar = foge.slice(1, 10);
>bar : Symbol(bar, Decl(useSharedArrayBuffer4.ts, 2, 3))
>foge.slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --))
>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3))
>slice : Symbol(SharedArrayBuffer.slice, Decl(lib.es2017.sharedmemory.d.ts, --, --))

var species = foge[Symbol.species];
>species : Symbol(species, Decl(useSharedArrayBuffer4.ts, 3, 3))
>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3))
>Symbol.species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --))
>species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))

var stringTag = foge[Symbol.toStringTag];
>stringTag : Symbol(stringTag, Decl(useSharedArrayBuffer4.ts, 4, 3))
>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3))
>Symbol.toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --))
>toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))

var len = foge.byteLength;
>len : Symbol(len, Decl(useSharedArrayBuffer4.ts, 5, 3))
>foge.byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --))
>foge : Symbol(foge, Decl(useSharedArrayBuffer4.ts, 1, 3))
>byteLength : Symbol(SharedArrayBuffer.byteLength, Decl(lib.es2017.sharedmemory.d.ts, --, --))

39 changes: 39 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer4.types
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer4.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : SharedArrayBuffer
>new SharedArrayBuffer(1024) : SharedArrayBuffer
>SharedArrayBuffer : SharedArrayBufferConstructor
>1024 : number

var bar = foge.slice(1, 10);
>bar : SharedArrayBuffer
>foge.slice(1, 10) : SharedArrayBuffer
>foge.slice : (begin: number, end?: number) => SharedArrayBuffer
>foge : SharedArrayBuffer
>slice : (begin: number, end?: number) => SharedArrayBuffer
>1 : number
>10 : number

var species = foge[Symbol.species];
>species : SharedArrayBuffer
>foge[Symbol.species] : SharedArrayBuffer
>foge : SharedArrayBuffer
>Symbol.species : symbol
>Symbol : SymbolConstructor
>species : symbol

var stringTag = foge[Symbol.toStringTag];
>stringTag : "SharedArrayBuffer"
>foge[Symbol.toStringTag] : "SharedArrayBuffer"
>foge : SharedArrayBuffer
>Symbol.toStringTag : symbol
>Symbol : SymbolConstructor
>toStringTag : symbol

var len = foge.byteLength;
>len : number
>foge.byteLength : number
>foge : SharedArrayBuffer
>byteLength : number

10 changes: 10 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer5.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//// [useSharedArrayBuffer5.ts]

var foge = new SharedArrayBuffer(1024);
var species = foge[Symbol.species];
var stringTag = foge[Symbol.toStringTag];

//// [useSharedArrayBuffer5.js]
var foge = new SharedArrayBuffer(1024);
var species = foge[Symbol.species];
var stringTag = foge[Symbol.toStringTag];
20 changes: 20 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer5.symbols
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer5.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : Symbol(foge, Decl(useSharedArrayBuffer5.ts, 1, 3))
>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --))

var species = foge[Symbol.species];
>species : Symbol(species, Decl(useSharedArrayBuffer5.ts, 2, 3))
>foge : Symbol(foge, Decl(useSharedArrayBuffer5.ts, 1, 3))
>Symbol.species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --))
>species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))

var stringTag = foge[Symbol.toStringTag];
>stringTag : Symbol(stringTag, Decl(useSharedArrayBuffer5.ts, 3, 3))
>foge : Symbol(foge, Decl(useSharedArrayBuffer5.ts, 1, 3))
>Symbol.toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --))
>toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))

24 changes: 24 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer5.types
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer5.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : SharedArrayBuffer
>new SharedArrayBuffer(1024) : SharedArrayBuffer
>SharedArrayBuffer : SharedArrayBufferConstructor
>1024 : number

var species = foge[Symbol.species];
>species : SharedArrayBuffer
>foge[Symbol.species] : SharedArrayBuffer
>foge : SharedArrayBuffer
>Symbol.species : symbol
>Symbol : SymbolConstructor
>species : symbol

var stringTag = foge[Symbol.toStringTag];
>stringTag : "SharedArrayBuffer"
>foge[Symbol.toStringTag] : "SharedArrayBuffer"
>foge : SharedArrayBuffer
>Symbol.toStringTag : symbol
>Symbol : SymbolConstructor
>toStringTag : symbol

10 changes: 10 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer6.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
//// [useSharedArrayBuffer6.ts]

var foge = new SharedArrayBuffer(1024);
var species = foge[Symbol.species];
var stringTag = foge[Symbol.toStringTag];

//// [useSharedArrayBuffer6.js]
var foge = new SharedArrayBuffer(1024);
var species = foge[Symbol.species];
var stringTag = foge[Symbol.toStringTag];
20 changes: 20 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer6.symbols
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer6.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 1, 3))
>SharedArrayBuffer : Symbol(SharedArrayBuffer, Decl(lib.es2017.sharedmemory.d.ts, --, --), Decl(lib.es2017.sharedmemory.d.ts, --, --))

var species = foge[Symbol.species];
>species : Symbol(species, Decl(useSharedArrayBuffer6.ts, 2, 3))
>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 1, 3))
>Symbol.species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --))
>species : Symbol(SymbolConstructor.species, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))

var stringTag = foge[Symbol.toStringTag];
>stringTag : Symbol(stringTag, Decl(useSharedArrayBuffer6.ts, 3, 3))
>foge : Symbol(foge, Decl(useSharedArrayBuffer6.ts, 1, 3))
>Symbol.toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))
>Symbol : Symbol(Symbol, Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --))
>toStringTag : Symbol(SymbolConstructor.toStringTag, Decl(lib.es2015.symbol.wellknown.d.ts, --, --))

24 changes: 24 additions & 0 deletions tests/baselines/reference/useSharedArrayBuffer6.types
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
=== tests/cases/conformance/es2017/useSharedArrayBuffer6.ts ===

var foge = new SharedArrayBuffer(1024);
>foge : SharedArrayBuffer
>new SharedArrayBuffer(1024) : SharedArrayBuffer
>SharedArrayBuffer : SharedArrayBufferConstructor
>1024 : number

var species = foge[Symbol.species];
>species : SharedArrayBuffer
>foge[Symbol.species] : SharedArrayBuffer
>foge : SharedArrayBuffer
>Symbol.species : symbol
>Symbol : SymbolConstructor
>species : symbol

var stringTag = foge[Symbol.toStringTag];
>stringTag : "SharedArrayBuffer"
>foge[Symbol.toStringTag] : "SharedArrayBuffer"
>foge : SharedArrayBuffer
>Symbol.toStringTag : symbol
>Symbol : SymbolConstructor
>toStringTag : symbol

6 changes: 6 additions & 0 deletions tests/cases/conformance/es2017/useSharedArrayBuffer1.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// @target: es5
// @lib: es5,es2017.sharedmemory

var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;
6 changes: 6 additions & 0 deletions tests/cases/conformance/es2017/useSharedArrayBuffer2.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// @target: es5
// @lib: es5

var foge = new SharedArrayBuffer(1024);
var bar = foge.slice(1, 10);
var len = foge.byteLength;
Loading