File: TypeGuardWithArrayUnion.symbols

package info (click to toggle)
node-typescript 5.2.2-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 497,488 kB
  • sloc: javascript: 2,107,274; makefile: 6; sh: 1
file content (27 lines) | stat: -rw-r--r-- 1,100 bytes parent folder | download
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
//// [tests/cases/conformance/expressions/typeGuards/TypeGuardWithArrayUnion.ts] ////

=== TypeGuardWithArrayUnion.ts ===
class Message {
>Message : Symbol(Message, Decl(TypeGuardWithArrayUnion.ts, 0, 0))

    value: string;
>value : Symbol(Message.value, Decl(TypeGuardWithArrayUnion.ts, 0, 15))
}

function saySize(message: Message | Message[]) {
>saySize : Symbol(saySize, Decl(TypeGuardWithArrayUnion.ts, 2, 1))
>message : Symbol(message, Decl(TypeGuardWithArrayUnion.ts, 4, 17))
>Message : Symbol(Message, Decl(TypeGuardWithArrayUnion.ts, 0, 0))
>Message : Symbol(Message, Decl(TypeGuardWithArrayUnion.ts, 0, 0))

    if (message instanceof Array) {
>message : Symbol(message, Decl(TypeGuardWithArrayUnion.ts, 4, 17))
>Array : Symbol(Array, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))

        return message.length;  // Should have type Message[] here
>message.length : Symbol(Array.length, Decl(lib.es5.d.ts, --, --))
>message : Symbol(message, Decl(TypeGuardWithArrayUnion.ts, 4, 17))
>length : Symbol(Array.length, Decl(lib.es5.d.ts, --, --))
    }
}