mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-02-14 10:55:15 -06:00
Respond to code review comments
This commit is contained in:
parent
02ccd91159
commit
b977b8cc45
@ -2254,10 +2254,7 @@ namespace ts {
|
||||
// this.foo assignment in a JavaScript class
|
||||
// Bind this property to the containing class
|
||||
const containingClass = container.parent;
|
||||
const symbol = hasModifier(container, ModifierFlags.Static)
|
||||
? declareSymbol(containingClass.symbol.exports, containingClass.symbol, node, SymbolFlags.Property, SymbolFlags.None)
|
||||
: declareSymbol(containingClass.symbol.members, containingClass.symbol, node, SymbolFlags.Property, SymbolFlags.None);
|
||||
|
||||
const symbol = declareSymbol(hasModifier(container, ModifierFlags.Static) ? containingClass.symbol.exports : containingClass.symbol.members, containingClass.symbol, node, SymbolFlags.Property, SymbolFlags.None);
|
||||
if (symbol) {
|
||||
// symbols declared through 'this' property assignements can be overwritten by subsequent method declarations
|
||||
(symbol as Symbol).isReplaceableByMethod = true;
|
||||
|
||||
@ -3472,7 +3472,7 @@ namespace ts {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
function getWidendedTypeFromJSSpecialPropetyDeclarations(symbol: Symbol) {
|
||||
function getWidenedTypeFromJSSpecialPropetyDeclarations(symbol: Symbol) {
|
||||
const types: Type[] = [];
|
||||
let definedInConstructor = false;
|
||||
let definedInMethod = false;
|
||||
@ -3663,7 +3663,7 @@ namespace ts {
|
||||
// * className.prototype.method = expr
|
||||
if (declaration.kind === SyntaxKind.BinaryExpression ||
|
||||
declaration.kind === SyntaxKind.PropertyAccessExpression && declaration.parent.kind === SyntaxKind.BinaryExpression) {
|
||||
type = getWidendedTypeFromJSSpecialPropetyDeclarations(symbol);
|
||||
type = getWidenedTypeFromJSSpecialPropetyDeclarations(symbol);
|
||||
}
|
||||
else {
|
||||
type = getWidenedTypeForVariableLikeDeclaration(<VariableLikeDeclaration>declaration, /*reportErrors*/ true);
|
||||
|
||||
@ -10,6 +10,7 @@ class C {
|
||||
else {
|
||||
this.inConstructor = "string"
|
||||
}
|
||||
this.inMultiple = 0;
|
||||
}
|
||||
method() {
|
||||
if (Math.random()) {
|
||||
@ -18,6 +19,7 @@ class C {
|
||||
else {
|
||||
this.inMethod = "string"
|
||||
}
|
||||
this.inMultiple = "string";
|
||||
}
|
||||
get() {
|
||||
if (Math.random()) {
|
||||
@ -26,6 +28,7 @@ class C {
|
||||
else {
|
||||
this.inGetter = "string"
|
||||
}
|
||||
this.inMultiple = false;
|
||||
}
|
||||
set() {
|
||||
if (Math.random()) {
|
||||
@ -73,6 +76,11 @@ var stringOrNumberOrUndefined = c.inMethod;
|
||||
var stringOrNumberOrUndefined = c.inGetter;
|
||||
var stringOrNumberOrUndefined = c.inSetter;
|
||||
|
||||
var stringOrNumberOrBoolean: string | number | boolean;
|
||||
|
||||
var stringOrNumberOrBoolean = c.inMultiple;
|
||||
|
||||
|
||||
var stringOrNumberOrUndefined = C.inStaticMethod;
|
||||
var stringOrNumberOrUndefined = C.inStaticGetter;
|
||||
var stringOrNumberOrUndefined = C.inStaticSetter;
|
||||
@ -87,6 +95,7 @@ var C = (function () {
|
||||
else {
|
||||
this.inConstructor = "string";
|
||||
}
|
||||
this.inMultiple = 0;
|
||||
}
|
||||
C.prototype.method = function () {
|
||||
if (Math.random()) {
|
||||
@ -95,6 +104,7 @@ var C = (function () {
|
||||
else {
|
||||
this.inMethod = "string";
|
||||
}
|
||||
this.inMultiple = "string";
|
||||
};
|
||||
C.prototype.get = function () {
|
||||
if (Math.random()) {
|
||||
@ -103,6 +113,7 @@ var C = (function () {
|
||||
else {
|
||||
this.inGetter = "string";
|
||||
}
|
||||
this.inMultiple = false;
|
||||
};
|
||||
C.prototype.set = function () {
|
||||
if (Math.random()) {
|
||||
@ -145,6 +156,8 @@ var stringOrNumberOrUndefined;
|
||||
var stringOrNumberOrUndefined = c.inMethod;
|
||||
var stringOrNumberOrUndefined = c.inGetter;
|
||||
var stringOrNumberOrUndefined = c.inSetter;
|
||||
var stringOrNumberOrBoolean;
|
||||
var stringOrNumberOrBoolean = c.inMultiple;
|
||||
var stringOrNumberOrUndefined = C.inStaticMethod;
|
||||
var stringOrNumberOrUndefined = C.inStaticGetter;
|
||||
var stringOrNumberOrUndefined = C.inStaticSetter;
|
||||
|
||||
@ -20,9 +20,13 @@ class C {
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inConstructor : Symbol(C.inConstructor, Decl(a.js, 3, 28), Decl(a.js, 6, 14))
|
||||
}
|
||||
this.inMultiple = 0;
|
||||
>this.inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
}
|
||||
method() {
|
||||
>method : Symbol(C.method, Decl(a.js, 9, 5))
|
||||
>method : Symbol(C.method, Decl(a.js, 10, 5))
|
||||
|
||||
if (Math.random()) {
|
||||
>Math.random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
@ -30,19 +34,23 @@ class C {
|
||||
>random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
|
||||
this.inMethod = 0;
|
||||
>this.inMethod : Symbol(C.inMethod, Decl(a.js, 11, 28), Decl(a.js, 14, 14))
|
||||
>this.inMethod : Symbol(C.inMethod, Decl(a.js, 12, 28), Decl(a.js, 15, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inMethod : Symbol(C.inMethod, Decl(a.js, 11, 28), Decl(a.js, 14, 14))
|
||||
>inMethod : Symbol(C.inMethod, Decl(a.js, 12, 28), Decl(a.js, 15, 14))
|
||||
}
|
||||
else {
|
||||
this.inMethod = "string"
|
||||
>this.inMethod : Symbol(C.inMethod, Decl(a.js, 11, 28), Decl(a.js, 14, 14))
|
||||
>this.inMethod : Symbol(C.inMethod, Decl(a.js, 12, 28), Decl(a.js, 15, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inMethod : Symbol(C.inMethod, Decl(a.js, 11, 28), Decl(a.js, 14, 14))
|
||||
>inMethod : Symbol(C.inMethod, Decl(a.js, 12, 28), Decl(a.js, 15, 14))
|
||||
}
|
||||
this.inMultiple = "string";
|
||||
>this.inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
}
|
||||
get() {
|
||||
>get : Symbol(C.get, Decl(a.js, 17, 5))
|
||||
>get : Symbol(C.get, Decl(a.js, 19, 5))
|
||||
|
||||
if (Math.random()) {
|
||||
>Math.random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
@ -50,19 +58,23 @@ class C {
|
||||
>random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
|
||||
this.inGetter = 0;
|
||||
>this.inGetter : Symbol(C.inGetter, Decl(a.js, 19, 28), Decl(a.js, 22, 14))
|
||||
>this.inGetter : Symbol(C.inGetter, Decl(a.js, 21, 28), Decl(a.js, 24, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inGetter : Symbol(C.inGetter, Decl(a.js, 19, 28), Decl(a.js, 22, 14))
|
||||
>inGetter : Symbol(C.inGetter, Decl(a.js, 21, 28), Decl(a.js, 24, 14))
|
||||
}
|
||||
else {
|
||||
this.inGetter = "string"
|
||||
>this.inGetter : Symbol(C.inGetter, Decl(a.js, 19, 28), Decl(a.js, 22, 14))
|
||||
>this.inGetter : Symbol(C.inGetter, Decl(a.js, 21, 28), Decl(a.js, 24, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inGetter : Symbol(C.inGetter, Decl(a.js, 19, 28), Decl(a.js, 22, 14))
|
||||
>inGetter : Symbol(C.inGetter, Decl(a.js, 21, 28), Decl(a.js, 24, 14))
|
||||
}
|
||||
this.inMultiple = false;
|
||||
>this.inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
}
|
||||
set() {
|
||||
>set : Symbol(C.set, Decl(a.js, 25, 5))
|
||||
>set : Symbol(C.set, Decl(a.js, 28, 5))
|
||||
|
||||
if (Math.random()) {
|
||||
>Math.random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
@ -70,19 +82,19 @@ class C {
|
||||
>random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
|
||||
this.inSetter = 0;
|
||||
>this.inSetter : Symbol(C.inSetter, Decl(a.js, 27, 28), Decl(a.js, 30, 14))
|
||||
>this.inSetter : Symbol(C.inSetter, Decl(a.js, 30, 28), Decl(a.js, 33, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inSetter : Symbol(C.inSetter, Decl(a.js, 27, 28), Decl(a.js, 30, 14))
|
||||
>inSetter : Symbol(C.inSetter, Decl(a.js, 30, 28), Decl(a.js, 33, 14))
|
||||
}
|
||||
else {
|
||||
this.inSetter = "string"
|
||||
>this.inSetter : Symbol(C.inSetter, Decl(a.js, 27, 28), Decl(a.js, 30, 14))
|
||||
>this.inSetter : Symbol(C.inSetter, Decl(a.js, 30, 28), Decl(a.js, 33, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inSetter : Symbol(C.inSetter, Decl(a.js, 27, 28), Decl(a.js, 30, 14))
|
||||
>inSetter : Symbol(C.inSetter, Decl(a.js, 30, 28), Decl(a.js, 33, 14))
|
||||
}
|
||||
}
|
||||
static method() {
|
||||
>method : Symbol(C.method, Decl(a.js, 33, 5))
|
||||
>method : Symbol(C.method, Decl(a.js, 36, 5))
|
||||
|
||||
if (Math.random()) {
|
||||
>Math.random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
@ -90,19 +102,19 @@ class C {
|
||||
>random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
|
||||
this.inStaticMethod = 0;
|
||||
>this.inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 35, 28), Decl(a.js, 38, 14))
|
||||
>this.inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 38, 28), Decl(a.js, 41, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 35, 28), Decl(a.js, 38, 14))
|
||||
>inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 38, 28), Decl(a.js, 41, 14))
|
||||
}
|
||||
else {
|
||||
this.inStaticMethod = "string"
|
||||
>this.inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 35, 28), Decl(a.js, 38, 14))
|
||||
>this.inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 38, 28), Decl(a.js, 41, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 35, 28), Decl(a.js, 38, 14))
|
||||
>inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 38, 28), Decl(a.js, 41, 14))
|
||||
}
|
||||
}
|
||||
static get() {
|
||||
>get : Symbol(C.get, Decl(a.js, 41, 5))
|
||||
>get : Symbol(C.get, Decl(a.js, 44, 5))
|
||||
|
||||
if (Math.random()) {
|
||||
>Math.random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
@ -110,19 +122,19 @@ class C {
|
||||
>random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
|
||||
this.inStaticGetter = 0;
|
||||
>this.inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 43, 28), Decl(a.js, 46, 14))
|
||||
>this.inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 46, 28), Decl(a.js, 49, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 43, 28), Decl(a.js, 46, 14))
|
||||
>inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 46, 28), Decl(a.js, 49, 14))
|
||||
}
|
||||
else {
|
||||
this.inStaticGetter = "string"
|
||||
>this.inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 43, 28), Decl(a.js, 46, 14))
|
||||
>this.inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 46, 28), Decl(a.js, 49, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 43, 28), Decl(a.js, 46, 14))
|
||||
>inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 46, 28), Decl(a.js, 49, 14))
|
||||
}
|
||||
}
|
||||
static set() {
|
||||
>set : Symbol(C.set, Decl(a.js, 49, 5))
|
||||
>set : Symbol(C.set, Decl(a.js, 52, 5))
|
||||
|
||||
if (Math.random()) {
|
||||
>Math.random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
@ -130,15 +142,15 @@ class C {
|
||||
>random : Symbol(Math.random, Decl(lib.d.ts, --, --))
|
||||
|
||||
this.inStaticSetter = 0;
|
||||
>this.inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 51, 28), Decl(a.js, 54, 14))
|
||||
>this.inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 54, 28), Decl(a.js, 57, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 51, 28), Decl(a.js, 54, 14))
|
||||
>inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 54, 28), Decl(a.js, 57, 14))
|
||||
}
|
||||
else {
|
||||
this.inStaticSetter = "string"
|
||||
>this.inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 51, 28), Decl(a.js, 54, 14))
|
||||
>this.inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 54, 28), Decl(a.js, 57, 14))
|
||||
>this : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 51, 28), Decl(a.js, 54, 14))
|
||||
>inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 54, 28), Decl(a.js, 57, 14))
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -158,41 +170,51 @@ var stringOrNumber = c.inConstructor;
|
||||
>inConstructor : Symbol(C.inConstructor, Decl(a.js, 3, 28), Decl(a.js, 6, 14))
|
||||
|
||||
var stringOrNumberOrUndefined: string | number | undefined;
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 11, 3), Decl(b.ts, 12, 3), Decl(b.ts, 13, 3))
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 16, 3), Decl(b.ts, 17, 3), Decl(b.ts, 18, 3))
|
||||
|
||||
var stringOrNumberOrUndefined = c.inMethod;
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 11, 3), Decl(b.ts, 12, 3), Decl(b.ts, 13, 3))
|
||||
>c.inMethod : Symbol(C.inMethod, Decl(a.js, 11, 28), Decl(a.js, 14, 14))
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 16, 3), Decl(b.ts, 17, 3), Decl(b.ts, 18, 3))
|
||||
>c.inMethod : Symbol(C.inMethod, Decl(a.js, 12, 28), Decl(a.js, 15, 14))
|
||||
>c : Symbol(c, Decl(b.ts, 0, 3))
|
||||
>inMethod : Symbol(C.inMethod, Decl(a.js, 11, 28), Decl(a.js, 14, 14))
|
||||
>inMethod : Symbol(C.inMethod, Decl(a.js, 12, 28), Decl(a.js, 15, 14))
|
||||
|
||||
var stringOrNumberOrUndefined = c.inGetter;
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 11, 3), Decl(b.ts, 12, 3), Decl(b.ts, 13, 3))
|
||||
>c.inGetter : Symbol(C.inGetter, Decl(a.js, 19, 28), Decl(a.js, 22, 14))
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 16, 3), Decl(b.ts, 17, 3), Decl(b.ts, 18, 3))
|
||||
>c.inGetter : Symbol(C.inGetter, Decl(a.js, 21, 28), Decl(a.js, 24, 14))
|
||||
>c : Symbol(c, Decl(b.ts, 0, 3))
|
||||
>inGetter : Symbol(C.inGetter, Decl(a.js, 19, 28), Decl(a.js, 22, 14))
|
||||
>inGetter : Symbol(C.inGetter, Decl(a.js, 21, 28), Decl(a.js, 24, 14))
|
||||
|
||||
var stringOrNumberOrUndefined = c.inSetter;
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 11, 3), Decl(b.ts, 12, 3), Decl(b.ts, 13, 3))
|
||||
>c.inSetter : Symbol(C.inSetter, Decl(a.js, 27, 28), Decl(a.js, 30, 14))
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 16, 3), Decl(b.ts, 17, 3), Decl(b.ts, 18, 3))
|
||||
>c.inSetter : Symbol(C.inSetter, Decl(a.js, 30, 28), Decl(a.js, 33, 14))
|
||||
>c : Symbol(c, Decl(b.ts, 0, 3))
|
||||
>inSetter : Symbol(C.inSetter, Decl(a.js, 27, 28), Decl(a.js, 30, 14))
|
||||
>inSetter : Symbol(C.inSetter, Decl(a.js, 30, 28), Decl(a.js, 33, 14))
|
||||
|
||||
var stringOrNumberOrBoolean: string | number | boolean;
|
||||
>stringOrNumberOrBoolean : Symbol(stringOrNumberOrBoolean, Decl(b.ts, 11, 3), Decl(b.ts, 13, 3))
|
||||
|
||||
var stringOrNumberOrBoolean = c.inMultiple;
|
||||
>stringOrNumberOrBoolean : Symbol(stringOrNumberOrBoolean, Decl(b.ts, 11, 3), Decl(b.ts, 13, 3))
|
||||
>c.inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
>c : Symbol(c, Decl(b.ts, 0, 3))
|
||||
>inMultiple : Symbol(C.inMultiple, Decl(a.js, 8, 9), Decl(a.js, 17, 9), Decl(a.js, 26, 9))
|
||||
|
||||
|
||||
var stringOrNumberOrUndefined = C.inStaticMethod;
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 11, 3), Decl(b.ts, 12, 3), Decl(b.ts, 13, 3))
|
||||
>C.inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 35, 28), Decl(a.js, 38, 14))
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 16, 3), Decl(b.ts, 17, 3), Decl(b.ts, 18, 3))
|
||||
>C.inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 38, 28), Decl(a.js, 41, 14))
|
||||
>C : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 35, 28), Decl(a.js, 38, 14))
|
||||
>inStaticMethod : Symbol(C.inStaticMethod, Decl(a.js, 38, 28), Decl(a.js, 41, 14))
|
||||
|
||||
var stringOrNumberOrUndefined = C.inStaticGetter;
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 11, 3), Decl(b.ts, 12, 3), Decl(b.ts, 13, 3))
|
||||
>C.inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 43, 28), Decl(a.js, 46, 14))
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 16, 3), Decl(b.ts, 17, 3), Decl(b.ts, 18, 3))
|
||||
>C.inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 46, 28), Decl(a.js, 49, 14))
|
||||
>C : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 43, 28), Decl(a.js, 46, 14))
|
||||
>inStaticGetter : Symbol(C.inStaticGetter, Decl(a.js, 46, 28), Decl(a.js, 49, 14))
|
||||
|
||||
var stringOrNumberOrUndefined = C.inStaticSetter;
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 11, 3), Decl(b.ts, 12, 3), Decl(b.ts, 13, 3))
|
||||
>C.inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 51, 28), Decl(a.js, 54, 14))
|
||||
>stringOrNumberOrUndefined : Symbol(stringOrNumberOrUndefined, Decl(b.ts, 5, 3), Decl(b.ts, 7, 3), Decl(b.ts, 8, 3), Decl(b.ts, 9, 3), Decl(b.ts, 16, 3), Decl(b.ts, 17, 3), Decl(b.ts, 18, 3))
|
||||
>C.inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 54, 28), Decl(a.js, 57, 14))
|
||||
>C : Symbol(C, Decl(a.js, 0, 0))
|
||||
>inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 51, 28), Decl(a.js, 54, 14))
|
||||
>inStaticSetter : Symbol(C.inStaticSetter, Decl(a.js, 54, 28), Decl(a.js, 57, 14))
|
||||
|
||||
|
||||
@ -25,6 +25,12 @@ class C {
|
||||
>inConstructor : string | number
|
||||
>"string" : "string"
|
||||
}
|
||||
this.inMultiple = 0;
|
||||
>this.inMultiple = 0 : 0
|
||||
>this.inMultiple : string | number | boolean
|
||||
>this : this
|
||||
>inMultiple : string | number | boolean
|
||||
>0 : 0
|
||||
}
|
||||
method() {
|
||||
>method : () => void
|
||||
@ -50,6 +56,12 @@ class C {
|
||||
>inMethod : string | number | undefined
|
||||
>"string" : "string"
|
||||
}
|
||||
this.inMultiple = "string";
|
||||
>this.inMultiple = "string" : "string"
|
||||
>this.inMultiple : string | number | boolean
|
||||
>this : this
|
||||
>inMultiple : string | number | boolean
|
||||
>"string" : "string"
|
||||
}
|
||||
get() {
|
||||
>get : () => void
|
||||
@ -75,6 +87,12 @@ class C {
|
||||
>inGetter : string | number | undefined
|
||||
>"string" : "string"
|
||||
}
|
||||
this.inMultiple = false;
|
||||
>this.inMultiple = false : false
|
||||
>this.inMultiple : string | number | boolean
|
||||
>this : this
|
||||
>inMultiple : string | number | boolean
|
||||
>false : false
|
||||
}
|
||||
set() {
|
||||
>set : () => void
|
||||
@ -214,6 +232,16 @@ var stringOrNumberOrUndefined = c.inSetter;
|
||||
>c : C
|
||||
>inSetter : string | number | undefined
|
||||
|
||||
var stringOrNumberOrBoolean: string | number | boolean;
|
||||
>stringOrNumberOrBoolean : string | number | boolean
|
||||
|
||||
var stringOrNumberOrBoolean = c.inMultiple;
|
||||
>stringOrNumberOrBoolean : string | number | boolean
|
||||
>c.inMultiple : string | number | boolean
|
||||
>c : C
|
||||
>inMultiple : string | number | boolean
|
||||
|
||||
|
||||
var stringOrNumberOrUndefined = C.inStaticMethod;
|
||||
>stringOrNumberOrUndefined : string | number | undefined
|
||||
>C.inStaticMethod : string | number | undefined
|
||||
|
||||
@ -11,6 +11,7 @@ class C {
|
||||
else {
|
||||
this.inConstructor = "string"
|
||||
}
|
||||
this.inMultiple = 0;
|
||||
}
|
||||
method() {
|
||||
if (Math.random()) {
|
||||
@ -19,6 +20,7 @@ class C {
|
||||
else {
|
||||
this.inMethod = "string"
|
||||
}
|
||||
this.inMultiple = "string";
|
||||
}
|
||||
get() {
|
||||
if (Math.random()) {
|
||||
@ -27,6 +29,7 @@ class C {
|
||||
else {
|
||||
this.inGetter = "string"
|
||||
}
|
||||
this.inMultiple = false;
|
||||
}
|
||||
set() {
|
||||
if (Math.random()) {
|
||||
@ -74,6 +77,11 @@ var stringOrNumberOrUndefined = c.inMethod;
|
||||
var stringOrNumberOrUndefined = c.inGetter;
|
||||
var stringOrNumberOrUndefined = c.inSetter;
|
||||
|
||||
var stringOrNumberOrBoolean: string | number | boolean;
|
||||
|
||||
var stringOrNumberOrBoolean = c.inMultiple;
|
||||
|
||||
|
||||
var stringOrNumberOrUndefined = C.inStaticMethod;
|
||||
var stringOrNumberOrUndefined = C.inStaticGetter;
|
||||
var stringOrNumberOrUndefined = C.inStaticSetter;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user