TypeScript/tests/baselines/reference/discriminatedUnionTypes3.symbols

43 lines
1.7 KiB
Plaintext

=== tests/cases/conformance/types/union/discriminatedUnionTypes3.ts ===
// Repro from #44435
type Correct = {
>Correct : Symbol(Correct, Decl(discriminatedUnionTypes3.ts, 0, 0))
code: string
>code : Symbol(code, Decl(discriminatedUnionTypes3.ts, 2, 16))
property: true
>property : Symbol(property, Decl(discriminatedUnionTypes3.ts, 3, 13))
err: undefined
>err : Symbol(err, Decl(discriminatedUnionTypes3.ts, 4, 15))
}
type Err = {
>Err : Symbol(Err, Decl(discriminatedUnionTypes3.ts, 6, 1))
err: `${string} is wrong!`
>err : Symbol(err, Decl(discriminatedUnionTypes3.ts, 7, 12))
}
type SomeReturnType = Correct | Err;
>SomeReturnType : Symbol(SomeReturnType, Decl(discriminatedUnionTypes3.ts, 9, 1))
>Correct : Symbol(Correct, Decl(discriminatedUnionTypes3.ts, 0, 0))
>Err : Symbol(Err, Decl(discriminatedUnionTypes3.ts, 6, 1))
const example: SomeReturnType = {} as SomeReturnType;
>example : Symbol(example, Decl(discriminatedUnionTypes3.ts, 12, 5))
>SomeReturnType : Symbol(SomeReturnType, Decl(discriminatedUnionTypes3.ts, 9, 1))
>SomeReturnType : Symbol(SomeReturnType, Decl(discriminatedUnionTypes3.ts, 9, 1))
if (example.err === undefined) {
>example.err : Symbol(err, Decl(discriminatedUnionTypes3.ts, 4, 15), Decl(discriminatedUnionTypes3.ts, 7, 12))
>example : Symbol(example, Decl(discriminatedUnionTypes3.ts, 12, 5))
>err : Symbol(err, Decl(discriminatedUnionTypes3.ts, 4, 15), Decl(discriminatedUnionTypes3.ts, 7, 12))
>undefined : Symbol(undefined)
example.property; // true
>example.property : Symbol(property, Decl(discriminatedUnionTypes3.ts, 3, 13))
>example : Symbol(example, Decl(discriminatedUnionTypes3.ts, 12, 5))
>property : Symbol(property, Decl(discriminatedUnionTypes3.ts, 3, 13))
}