TypeScript/tests/baselines/reference/symbolProperty21.types
2015-04-15 16:44:20 -07:00

57 lines
1.4 KiB
Plaintext

=== tests/cases/conformance/es6/Symbols/symbolProperty21.ts ===
interface I<T, U> {
>I : I<T, U>
>T : T
>U : U
[Symbol.unscopables]: T;
>Symbol.unscopables : symbol
>Symbol : SymbolConstructor
>unscopables : symbol
>T : T
[Symbol.isConcatSpreadable]: U;
>Symbol.isConcatSpreadable : symbol
>Symbol : SymbolConstructor
>isConcatSpreadable : symbol
>U : U
}
declare function foo<T, U>(p: I<T, U>): { t: T; u: U };
>foo : <T, U>(p: I<T, U>) => { t: T; u: U; }
>T : T
>U : U
>p : I<T, U>
>I : I<T, U>
>T : T
>U : U
>t : T
>T : T
>u : U
>U : U
foo({
>foo({ [Symbol.isConcatSpreadable]: "", [Symbol.toPrimitive]: 0, [Symbol.unscopables]: true}) : { t: boolean; u: string; }
>foo : <T, U>(p: I<T, U>) => { t: T; u: U; }
>{ [Symbol.isConcatSpreadable]: "", [Symbol.toPrimitive]: 0, [Symbol.unscopables]: true} : { [Symbol.isConcatSpreadable]: string; [Symbol.toPrimitive]: number; [Symbol.unscopables]: boolean; }
[Symbol.isConcatSpreadable]: "",
>Symbol.isConcatSpreadable : symbol
>Symbol : SymbolConstructor
>isConcatSpreadable : symbol
>"" : string
[Symbol.toPrimitive]: 0,
>Symbol.toPrimitive : symbol
>Symbol : SymbolConstructor
>toPrimitive : symbol
>0 : number
[Symbol.unscopables]: true
>Symbol.unscopables : symbol
>Symbol : SymbolConstructor
>unscopables : symbol
>true : boolean
});