Skip to content

Commit afc7d94

Browse files
committed
feat: suffix rather than prefix setter/getters
Fixes microsoft/vscode#108036
1 parent 5375f57 commit afc7d94

10 files changed

+49
-50
lines changed

src/adapter/variables.ts

+4-5
Original file line numberDiff line numberDiff line change
@@ -430,10 +430,9 @@ export class VariableStore {
430430
// Wrap up
431431
const resolved = flatten(await Promise.all(properties));
432432
resolved.sort((a, b) => {
433-
const aname = a.v.name.includes(' ') ? a.v.name.split(' ')[1] : a.v.name;
434-
const bname = b.v.name.includes(' ') ? b.v.name.split(' ')[1] : b.v.name;
433+
const aname = a.v.name.includes(' ') ? a.v.name.split(' ')[0] : a.v.name;
434+
const bname = b.v.name.includes(' ') ? b.v.name.split(' ')[0] : b.v.name;
435435
if (!isNaN(+aname) && !isNaN(+bname)) return +aname - +bname;
436-
// tslint:disable-next-line
437436
const delta = b.weight - a.weight;
438437
return delta ? delta : aname.localeCompare(bname);
439438
});
@@ -521,14 +520,14 @@ export class VariableStore {
521520
} else {
522521
const obj = owner.wrap(p.name, p.get);
523522
obj.evaluteOnInspect = true;
524-
result.push(this._createGetter(`get ${p.name}`, obj, 'propertyValue'));
523+
result.push(this._createGetter(`${p.name} (get)`, obj, 'propertyValue'));
525524
}
526525
}
527526

528527
// add setter if present
529528
if (p.set && p.set.type !== 'undefined') {
530529
result.push(
531-
await this._createVariable(`set ${p.name}`, owner.wrap(p.name, p.set), 'propertyValue'),
530+
await this._createVariable(`${p.name} (set)`, owner.wrap(p.name, p.set), 'propertyValue'),
532531
);
533532
}
534533

src/test/evaluate/evaluate-auto-expands-getter-447.txt

+12-12
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
> result: {}
2-
> set foo: ƒ foo(x) {}
3-
> get arguments: ƒ ()
4-
> set arguments: ƒ ()
5-
> get caller: ƒ ()
6-
> set caller: ƒ ()
2+
> foo (set): ƒ foo(x) {}
3+
> arguments (get): ƒ ()
4+
> arguments (set): ƒ ()
5+
> caller (get): ƒ ()
6+
> caller (set): ƒ ()
77
length: 1
88
name: 'set foo'
99
[[FunctionLocation]]: @ <eval>/VM<xx>:1
1010
> [[Scopes]]: Scopes[1]
1111
> __proto__: function () { [native code] }
1212
> __proto__: Object
13-
> set foo: ƒ foo(x) {}
13+
> foo (set): ƒ foo(x) {}
1414
> __proto__: Object
1515

1616
> result: {}
@@ -20,18 +20,18 @@
2020
> __proto__: Object
2121

2222
> result: {}
23-
> get foo: ƒ foo() { throw 'wat'; }
24-
> get arguments: ƒ ()
25-
> set arguments: ƒ ()
26-
> get caller: ƒ ()
27-
> set caller: ƒ ()
23+
> foo (get): ƒ foo() { throw 'wat'; }
24+
> arguments (get): ƒ ()
25+
> arguments (set): ƒ ()
26+
> caller (get): ƒ ()
27+
> caller (set): ƒ ()
2828
length: 0
2929
name: 'get foo'
3030
[[FunctionLocation]]: @ <eval>/VM<xx>:1
3131
> [[Scopes]]: Scopes[1]
3232
> __proto__: function () { [native code] }
3333
> __proto__: Object
34-
> get foo: ƒ foo() { throw 'wat'; }
34+
> foo (get): ƒ foo() { throw 'wat'; }
3535
> __proto__: Object
3636

3737
> result: {}

src/test/evaluate/evaluate-default.txt

+23-23
Original file line numberDiff line numberDiff line change
@@ -18,17 +18,17 @@ result: 3
1818
0: 1
1919
1: 2
2020
2: 3
21-
> get buffer: ƒ buffer()
22-
> get byteLength: ƒ byteLength()
23-
> get byteOffset: ƒ byteOffset()
24-
> get length: ƒ length()
25-
> get Symbol(Symbol.toStringTag): ƒ [Symbol.toStringTag]()
21+
> buffer (get): ƒ buffer()
22+
> byteLength (get): ƒ byteLength()
23+
> byteOffset (get): ƒ byteOffset()
24+
> length (get): ƒ length()
25+
> Symbol(Symbol.toStringTag) (get): ƒ [Symbol.toStringTag]()
2626
> __proto__: TypedArray
2727

2828
> result: ArrayBuffer(3)
2929
> [[Int8Array]]: Int8Array(3) [1, 2, 3]
3030
> [[Uint8Array]]: Uint8Array(3) [1, 2, 3]
31-
> get byteLength: ƒ byteLength()
31+
> byteLength (get): ƒ byteLength()
3232
> __proto__: ArrayBuffer
3333

3434
> result: Proxy {a: 1}
@@ -37,53 +37,53 @@ result: 3
3737
> [[Target]]: Object
3838

3939
> result: {}
40-
> set foo: ƒ foo(x) {}
41-
> get arguments: ƒ ()
42-
> set arguments: ƒ ()
43-
> get caller: ƒ ()
44-
> set caller: ƒ ()
40+
> foo (set): ƒ foo(x) {}
41+
> arguments (get): ƒ ()
42+
> arguments (set): ƒ ()
43+
> caller (get): ƒ ()
44+
> caller (set): ƒ ()
4545
length: 1
4646
name: 'set foo'
4747
[[FunctionLocation]]: @ <eval>/VM<xx>:1
4848
> [[Scopes]]: Scopes[1]
4949
> __proto__: function () { [native code] }
5050
> __proto__: Object
51-
> set foo: ƒ foo(x) {}
51+
> foo (set): ƒ foo(x) {}
5252
> __proto__: Object
5353

5454
> result: {}
55-
> get foo: ƒ foo() { return 42 }
55+
> foo (get): ƒ foo() { return 42 }
5656
42
5757
> __proto__: Object
58-
> get foo: ƒ foo() { return 42 }
58+
> foo (get): ƒ foo() { return 42 }
5959
> __proto__: Object
6060

6161
> result: {}
62-
> get foo: ƒ foo() { throw 'wat'; }
63-
> get arguments: ƒ ()
64-
> set arguments: ƒ ()
65-
> get caller: ƒ ()
66-
> set caller: ƒ ()
62+
> foo (get): ƒ foo() { throw 'wat'; }
63+
> arguments (get): ƒ ()
64+
> arguments (set): ƒ ()
65+
> caller (get): ƒ ()
66+
> caller (set): ƒ ()
6767
length: 0
6868
name: 'get foo'
6969
[[FunctionLocation]]: @ <eval>/VM<xx>:1
7070
> [[Scopes]]: Scopes[1]
7171
> __proto__: function () { [native code] }
7272
> __proto__: Object
73-
> get foo: ƒ foo() { throw 'wat'; }
73+
> foo (get): ƒ foo() { throw 'wat'; }
7474
> __proto__: Object
7575

7676
Evaluating#1: setTimeout(() => { throw new Error('bar')}, 0)
7777
stderr> Uncaught Error: bar
7878
stderr> > Uncaught Error: bar
79-
stderr>
79+
stderr>
8080
<anonymous> @ localhost꞉8001/eval1.js:1:26
8181
◀ setTimeout ▶
8282
<anonymous> @ localhost꞉8001/eval1.js:1
8383

8484
stderr> Uncaught Error: baz
8585
stderr> > Uncaught Error: baz
86-
stderr>
86+
stderr>
8787
<anonymous> @ <eval>/VM<xx>:1:26
8888
◀ setTimeout ▶
8989
<anonymous> @ <eval>/VM<xx>:1
@@ -94,7 +94,7 @@ stderr>
9494

9595
stderr> Uncaught Error: error2
9696
stderr> > Uncaught Error: error2
97-
stderr>
97+
stderr>
9898
throwError @ ${workspaceFolder}/web/browserify/module1.ts:6:9
9999
<anonymous> @ <eval>/VM<xx>:1:27
100100
◀ setTimeout ▶

src/test/evaluate/evaluate-repl.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ result: 1234567890n
1717
<error>: Uncaught ReferenceError: baz is not defined
1818

1919
> result: Map(1) {hello => ƒ ()}
20-
> get size: ƒ size()
20+
> size (get): ƒ size()
2121
> [[Entries]]: Array(1)
2222
> __proto__: Map
2323

Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
> result: using function: Instance of bar
2-
> get getter: ƒ getter() {}
2+
> getter (get): ƒ getter() {}
33
> __proto__: using function: Instance of bar
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
> result: using statement: Instance of bar
2-
> get getter: ƒ getter() {}
2+
> getter (get): ƒ getter() {}
33
> __proto__: using statement: Instance of bar
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
> result: using statement return: Instance of bar
2-
> get getter: ƒ getter() {}
2+
> getter (get): ƒ getter() {}
33
> __proto__: using statement return: Instance of bar
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
> result: Bar
2-
> get getter: ƒ getter() {}
2+
> getter (get): ƒ getter() {}
33
> __proto__: Foo
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
> result: {getter: <accessor>, accessor: <accessor>}
2-
> get accessor: () => {}
3-
> set accessor: () => {}
4-
> get getter: () => {}
5-
> set setter: () => {}
2+
> accessor (get): () => {}
3+
> accessor (set): () => {}
4+
> getter (get): () => {}
5+
> setter (set): () => {}
66
> __proto__: Object

src/test/variables/variables-web-tags.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
> 0: meta
33
> 1: title
44
> foo: meta
5-
> get length: ƒ length()
5+
> length (get): ƒ length()
66
> __proto__: HTMLCollection

0 commit comments

Comments
 (0)