File: jsDeclarationsComputedNames.js

package info (click to toggle)
node-typescript 4.9.5%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 533,908 kB
  • sloc: javascript: 2,018,330; makefile: 7; sh: 1
file content (93 lines) | stat: -rw-r--r-- 2,197 bytes parent folder | download | duplicates (3)
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
82
83
84
85
86
87
88
89
90
91
92
93
//// [tests/cases/conformance/jsdoc/declarations/jsDeclarationsComputedNames.ts] ////

//// [index.js]
const TopLevelSym = Symbol();
const InnerSym = Symbol();
module.exports = {
    [TopLevelSym](x = 12) {
        return x;
    },
    items: {
        [InnerSym]: (arg = {x: 12}) => arg.x
    }
}

//// [index2.js]
const TopLevelSym = Symbol();
const InnerSym = Symbol();

export class MyClass {
    static [TopLevelSym] = 12;
    [InnerSym] = "ok";
    /**
     * @param {typeof TopLevelSym | typeof InnerSym} _p
     */
    constructor(_p = InnerSym) {
        // switch on _p
    }
}


//// [index.js]
var _a, _b;
var TopLevelSym = Symbol();
var InnerSym = Symbol();
module.exports = (_a = {},
    _a[TopLevelSym] = function (x) {
        if (x === void 0) { x = 12; }
        return x;
    },
    _a.items = (_b = {},
        _b[InnerSym] = function (arg) {
            if (arg === void 0) { arg = { x: 12 }; }
            return arg.x;
        },
        _b),
    _a);
//// [index2.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MyClass = void 0;
var TopLevelSym = Symbol();
var InnerSym = Symbol();
var MyClass = /** @class */ (function () {
    /**
     * @param {typeof TopLevelSym | typeof InnerSym} _p
     */
    function MyClass(_p) {
        if (_p === void 0) { _p = InnerSym; }
        this[_b] = "ok";
        // switch on _p
    }
    var _a, _b;
    _a = TopLevelSym, _b = InnerSym;
    MyClass[_a] = 12;
    return MyClass;
}());
exports.MyClass = MyClass;


//// [index.d.ts]
declare const _exports: {
    [TopLevelSym](x?: number): number;
    items: {
        [InnerSym]: (arg?: {
            x: number;
        }) => number;
    };
};
export = _exports;
declare const TopLevelSym: unique symbol;
declare const InnerSym: unique symbol;
//// [index2.d.ts]
export class MyClass {
    static [TopLevelSym]: number;
    /**
     * @param {typeof TopLevelSym | typeof InnerSym} _p
     */
    constructor(_p?: typeof TopLevelSym | typeof InnerSym);
    [InnerSym]: string;
}
declare const InnerSym: unique symbol;
declare const TopLevelSym: unique symbol;
export {};