Skip to content

Commit 34a6bf5

Browse files
bjaspanBarry JaspanAndreasArvidsson
authored
Move the initializer into the constructor for instance members that r… (#2867)
…eference identifiers declared in the constructor. When TypeScript outputs modern language features, the below case throws an TS error. class C { a = this.x; // TS2729: Property 'x' is used before its initialization. constructor(public x:number){} } This error is fixed by moving the initializer of such class members into the constructor. This is a no-op change. This change came from Google. --------- Co-authored-by: Barry Jaspan <[email protected]> Co-authored-by: Andreas Arvidsson <[email protected]>
1 parent 5a822fc commit 34a6bf5

File tree

1 file changed

+175
-110
lines changed

1 file changed

+175
-110
lines changed

packages/cursorless-engine/src/actions/Actions.ts

+175-110
Original file line numberDiff line numberDiff line change
@@ -75,117 +75,182 @@ import { Decrement, Increment } from "./incrementDecrement";
7575
*/
7676
export class Actions implements ActionRecord {
7777
constructor(
78-
private treeSitter: TreeSitter,
79-
private snippets: Snippets,
80-
private rangeUpdater: RangeUpdater,
81-
private modifierStageFactory: ModifierStageFactory,
82-
) {}
78+
treeSitter: TreeSitter,
79+
snippets: Snippets,
80+
rangeUpdater: RangeUpdater,
81+
modifierStageFactory: ModifierStageFactory,
82+
) {
83+
this.addSelection = new AddSelection();
84+
this.addSelectionBefore = new AddSelectionBefore();
85+
this.addSelectionAfter = new AddSelectionAfter();
86+
this.callAsFunction = new Call(this);
87+
this.clearAndSetSelection = new Clear(this);
88+
this.copyToClipboard = new CopyToClipboard(this, rangeUpdater);
89+
this.cutToClipboard = new CutToClipboard(this);
90+
this.decrement = new Decrement(this);
91+
this.deselect = new Deselect();
92+
this.editNew = new EditNew(rangeUpdater, this);
93+
this.editNewLineAfter = new EditNewAfter(this, modifierStageFactory);
94+
this.editNewLineBefore = new EditNewBefore(this, modifierStageFactory);
95+
this.executeCommand = new ExecuteCommand(rangeUpdater);
96+
this.extractVariable = new ExtractVariable(rangeUpdater);
97+
this.findInDocument = new FindInDocument(this);
98+
this.findInWorkspace = new FindInWorkspace(this);
99+
this.flashTargets = new FlashTargets();
100+
this.foldRegion = new Fold(rangeUpdater);
101+
this.followLink = new FollowLink({ openAside: false });
102+
this.followLinkAside = new FollowLink({ openAside: true });
103+
this.generateSnippet = new GenerateSnippet(snippets);
104+
this.getText = new GetText();
105+
this.gitAccept = new GitAccept(rangeUpdater);
106+
this.gitRevert = new GitRevert(rangeUpdater);
107+
this.gitStage = new GitStage(rangeUpdater);
108+
this.gitUnstage = new GitUnstage(rangeUpdater);
109+
this.highlight = new Highlight();
110+
this.increment = new Increment(this);
111+
this.indentLine = new IndentLine(rangeUpdater);
112+
this.insertCopyAfter = new InsertCopyAfter(
113+
rangeUpdater,
114+
modifierStageFactory,
115+
);
116+
this.insertCopyBefore = new InsertCopyBefore(
117+
rangeUpdater,
118+
modifierStageFactory,
119+
);
120+
this.insertEmptyLineAfter = new InsertEmptyLineAfter(
121+
rangeUpdater,
122+
modifierStageFactory,
123+
);
124+
this.insertEmptyLineBefore = new InsertEmptyLineBefore(
125+
rangeUpdater,
126+
modifierStageFactory,
127+
);
128+
this.insertEmptyLinesAround = new InsertEmptyLinesAround(
129+
rangeUpdater,
130+
modifierStageFactory,
131+
);
132+
this.insertSnippet = new InsertSnippet(
133+
rangeUpdater,
134+
snippets,
135+
this,
136+
modifierStageFactory,
137+
);
138+
this.joinLines = new JoinLines(rangeUpdater, modifierStageFactory);
139+
this.breakLine = new BreakLine(rangeUpdater);
140+
this.moveToTarget = new Move(rangeUpdater);
141+
this.outdentLine = new OutdentLine(rangeUpdater);
142+
this.pasteFromClipboard = new PasteFromClipboard(rangeUpdater, this);
143+
this.randomizeTargets = new Random(this);
144+
this.remove = new Remove(rangeUpdater);
145+
this.rename = new Rename(rangeUpdater);
146+
this.replace = new Replace(rangeUpdater);
147+
this.replaceWithTarget = new Bring(rangeUpdater);
148+
this.revealDefinition = new RevealDefinition(rangeUpdater);
149+
this.revealTypeDefinition = new RevealTypeDefinition(rangeUpdater);
150+
this.reverseTargets = new Reverse(this);
151+
this.rewrapWithPairedDelimiter = new Rewrap(
152+
rangeUpdater,
153+
modifierStageFactory,
154+
);
155+
this.scrollToBottom = new ScrollToBottom();
156+
this.scrollToCenter = new ScrollToCenter();
157+
this.scrollToTop = new ScrollToTop();
158+
this.setSelection = new SetSelection();
159+
this.setSelectionAfter = new SetSelectionAfter();
160+
this.setSelectionBefore = new SetSelectionBefore();
161+
this.showDebugHover = new ShowDebugHover(rangeUpdater);
162+
this.showHover = new ShowHover(rangeUpdater);
163+
this.showQuickFix = new ShowQuickFix(rangeUpdater);
164+
this.showReferences = new ShowReferences(rangeUpdater);
165+
this.sortTargets = new Sort(this);
166+
this.swapTargets = new Swap(rangeUpdater);
167+
this.toggleLineBreakpoint = new ToggleBreakpoint(modifierStageFactory);
168+
this.toggleLineComment = new ToggleLineComment(rangeUpdater);
169+
this.unfoldRegion = new Unfold(rangeUpdater);
170+
this.wrapWithPairedDelimiter = new Wrap(rangeUpdater);
171+
this.wrapWithSnippet = new WrapWithSnippet(
172+
rangeUpdater,
173+
snippets,
174+
modifierStageFactory,
175+
);
83176

84-
addSelection = new AddSelection();
85-
addSelectionBefore = new AddSelectionBefore();
86-
addSelectionAfter = new AddSelectionAfter();
87-
callAsFunction = new Call(this);
88-
clearAndSetSelection = new Clear(this);
89-
copyToClipboard = new CopyToClipboard(this, this.rangeUpdater);
90-
cutToClipboard = new CutToClipboard(this);
91-
decrement = new Decrement(this);
92-
deselect = new Deselect();
93-
editNew = new EditNew(this.rangeUpdater, this);
94-
editNewLineAfter: EditNewAfter = new EditNewAfter(
95-
this,
96-
this.modifierStageFactory,
97-
);
98-
editNewLineBefore: EditNewBefore = new EditNewBefore(
99-
this,
100-
this.modifierStageFactory,
101-
);
102-
executeCommand = new ExecuteCommand(this.rangeUpdater);
103-
extractVariable = new ExtractVariable(this.rangeUpdater);
104-
findInDocument = new FindInDocument(this);
105-
findInWorkspace = new FindInWorkspace(this);
106-
flashTargets = new FlashTargets();
107-
foldRegion = new Fold(this.rangeUpdater);
108-
followLink = new FollowLink({ openAside: false });
109-
followLinkAside = new FollowLink({ openAside: true });
110-
generateSnippet = new GenerateSnippet(this.snippets);
111-
getText = new GetText();
112-
gitAccept = new GitAccept(this.rangeUpdater);
113-
gitRevert = new GitRevert(this.rangeUpdater);
114-
gitStage = new GitStage(this.rangeUpdater);
115-
gitUnstage = new GitUnstage(this.rangeUpdater);
116-
highlight = new Highlight();
117-
increment = new Increment(this);
118-
indentLine = new IndentLine(this.rangeUpdater);
119-
insertCopyAfter = new InsertCopyAfter(
120-
this.rangeUpdater,
121-
this.modifierStageFactory,
122-
);
123-
insertCopyBefore = new InsertCopyBefore(
124-
this.rangeUpdater,
125-
this.modifierStageFactory,
126-
);
127-
insertEmptyLineAfter = new InsertEmptyLineAfter(
128-
this.rangeUpdater,
129-
this.modifierStageFactory,
130-
);
131-
insertEmptyLineBefore = new InsertEmptyLineBefore(
132-
this.rangeUpdater,
133-
this.modifierStageFactory,
134-
);
135-
insertEmptyLinesAround = new InsertEmptyLinesAround(
136-
this.rangeUpdater,
137-
this.modifierStageFactory,
138-
);
139-
insertSnippet = new InsertSnippet(
140-
this.rangeUpdater,
141-
this.snippets,
142-
this,
143-
this.modifierStageFactory,
144-
);
145-
joinLines = new JoinLines(this.rangeUpdater, this.modifierStageFactory);
146-
breakLine = new BreakLine(this.rangeUpdater);
147-
moveToTarget = new Move(this.rangeUpdater);
148-
outdentLine = new OutdentLine(this.rangeUpdater);
149-
pasteFromClipboard = new PasteFromClipboard(this.rangeUpdater, this);
150-
randomizeTargets = new Random(this);
151-
remove = new Remove(this.rangeUpdater);
152-
rename = new Rename(this.rangeUpdater);
153-
replace = new Replace(this.rangeUpdater);
154-
replaceWithTarget = new Bring(this.rangeUpdater);
155-
revealDefinition = new RevealDefinition(this.rangeUpdater);
156-
revealTypeDefinition = new RevealTypeDefinition(this.rangeUpdater);
157-
reverseTargets = new Reverse(this);
158-
rewrapWithPairedDelimiter = new Rewrap(
159-
this.rangeUpdater,
160-
this.modifierStageFactory,
161-
);
162-
scrollToBottom = new ScrollToBottom();
163-
scrollToCenter = new ScrollToCenter();
164-
scrollToTop = new ScrollToTop();
165-
setSelection = new SetSelection();
166-
setSelectionAfter = new SetSelectionAfter();
167-
setSelectionBefore = new SetSelectionBefore();
168-
showDebugHover = new ShowDebugHover(this.rangeUpdater);
169-
showHover = new ShowHover(this.rangeUpdater);
170-
showQuickFix = new ShowQuickFix(this.rangeUpdater);
171-
showReferences = new ShowReferences(this.rangeUpdater);
172-
sortTargets = new Sort(this);
173-
swapTargets = new Swap(this.rangeUpdater);
174-
toggleLineBreakpoint = new ToggleBreakpoint(this.modifierStageFactory);
175-
toggleLineComment = new ToggleLineComment(this.rangeUpdater);
176-
unfoldRegion = new Unfold(this.rangeUpdater);
177-
wrapWithPairedDelimiter = new Wrap(this.rangeUpdater);
178-
wrapWithSnippet = new WrapWithSnippet(
179-
this.rangeUpdater,
180-
this.snippets,
181-
this.modifierStageFactory,
182-
);
177+
this["experimental.setInstanceReference"] = new SetSpecialTarget(
178+
"instanceReference",
179+
);
183180

184-
["experimental.setInstanceReference"] = new SetSpecialTarget(
185-
"instanceReference",
186-
);
181+
this["private.showParseTree"] = new ShowParseTree(treeSitter);
182+
this["private.getTargets"] = new GetTargets();
183+
this["private.setKeyboardTarget"] = new SetSpecialTarget("keyboard");
184+
}
187185

188-
["private.showParseTree"] = new ShowParseTree(this.treeSitter);
189-
["private.getTargets"] = new GetTargets();
190-
["private.setKeyboardTarget"] = new SetSpecialTarget("keyboard");
186+
addSelection;
187+
addSelectionBefore;
188+
addSelectionAfter;
189+
callAsFunction;
190+
clearAndSetSelection;
191+
copyToClipboard;
192+
cutToClipboard;
193+
decrement;
194+
deselect;
195+
editNew;
196+
editNewLineAfter: EditNewAfter;
197+
editNewLineBefore: EditNewBefore;
198+
executeCommand;
199+
extractVariable;
200+
findInDocument;
201+
findInWorkspace;
202+
flashTargets;
203+
foldRegion;
204+
followLink;
205+
followLinkAside;
206+
generateSnippet;
207+
getText;
208+
gitAccept;
209+
gitRevert;
210+
gitStage;
211+
gitUnstage;
212+
highlight;
213+
increment;
214+
indentLine;
215+
insertCopyAfter;
216+
insertCopyBefore;
217+
insertEmptyLineAfter;
218+
insertEmptyLineBefore;
219+
insertEmptyLinesAround;
220+
insertSnippet;
221+
joinLines;
222+
breakLine;
223+
moveToTarget;
224+
outdentLine;
225+
pasteFromClipboard;
226+
randomizeTargets;
227+
remove;
228+
rename;
229+
replace;
230+
replaceWithTarget;
231+
revealDefinition;
232+
revealTypeDefinition;
233+
reverseTargets;
234+
rewrapWithPairedDelimiter;
235+
scrollToBottom;
236+
scrollToCenter;
237+
scrollToTop;
238+
setSelection;
239+
setSelectionAfter;
240+
setSelectionBefore;
241+
showDebugHover;
242+
showHover;
243+
showQuickFix;
244+
showReferences;
245+
sortTargets;
246+
swapTargets;
247+
toggleLineBreakpoint;
248+
toggleLineComment;
249+
unfoldRegion;
250+
wrapWithPairedDelimiter;
251+
wrapWithSnippet;
252+
["experimental.setInstanceReference"];
253+
["private.showParseTree"];
254+
["private.getTargets"];
255+
["private.setKeyboardTarget"];
191256
}

0 commit comments

Comments
 (0)