1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
=== tests/cases/compiler/jsdocArrayObjectPromiseNoImplicitAny.js ===
/** @type {Array} */
var notAnyArray = [5];
>notAnyArray : any[]
>[5] : number[]
>5 : 5
/** @type {Array<number>} */
var numberArray = [5];
>numberArray : number[]
>[5] : number[]
>5 : 5
/**
* @param {Array} arr
* @return {Array}
*/
function returnNotAnyArray(arr) {
>returnNotAnyArray : (arr: any[]) => any[]
>arr : any[]
return arr;
>arr : any[]
}
/** @type {Promise} */
var notAnyPromise = Promise.resolve(5);
>notAnyPromise : Promise<any>
>Promise.resolve(5) : Promise<number>
>Promise.resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>Promise : PromiseConstructor
>resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>5 : 5
/** @type {Promise<number>} */
var numberPromise = Promise.resolve(5);
>numberPromise : Promise<number>
>Promise.resolve(5) : Promise<number>
>Promise.resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>Promise : PromiseConstructor
>resolve : { (): Promise<void>; <T>(value: T): Promise<Awaited<T>>; <T>(value: T | PromiseLike<T>): Promise<Awaited<T>>; }
>5 : 5
/**
* @param {Promise} pr
* @return {Promise}
*/
function returnNotAnyPromise(pr) {
>returnNotAnyPromise : (pr: Promise<any>) => Promise<any>
>pr : Promise<any>
return pr;
>pr : Promise<any>
}
/** @type {Object} */
var notAnyObject = {valueOf: 1}; // error since assigning to Object, not any.
>notAnyObject : Object
>{valueOf: 1} : { valueOf: number; }
>valueOf : number
>1 : 1
/** @type {Object<string, number>} */
var paramedObject = {valueOf: 1};
>paramedObject : { [x: string]: number; }
>{valueOf: 1} : { valueOf: number; }
>valueOf : number
>1 : 1
/**
* @param {Object} obj
* @return {Object}
*/
function returnNotAnyObject(obj) {
>returnNotAnyObject : (obj: Object) => Object
>obj : Object
return obj;
>obj : Object
}
|