File: asOperatorAmbiguity.types

package info (click to toggle)
node-typescript 5.0.4%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 459,140 kB
  • sloc: javascript: 1,972,754; makefile: 6; sh: 1
file content (25 lines) | stat: -rw-r--r-- 460 bytes parent folder | download | duplicates (5)
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
=== tests/cases/conformance/expressions/asOperator/asOperatorAmbiguity.ts ===
interface A<T> { x: T; }
>x : T

interface B { m: string; }
>m : string

// Make sure this is a type assertion to an array type, and not nested comparison operators.
var x: any;
>x : any

var y = x as A<B>[];
>y : A<B>[]
>x as A<B>[] : A<B>[]
>x : any

var z = y[0].m; // z should be string
>z : any
>y[0].m : any
>y[0] : A<B>
>y : A<B>[]
>0 : 0
>m : any