diff options
| author | Andrei Listochkin <andrei.listochkin@ferrous-systems.com> | 2022-05-17 18:31:51 +0100 |
|---|---|---|
| committer | Andrei Listochkin <andrei.listochkin@ferrous-systems.com> | 2022-05-17 18:31:51 +0100 |
| commit | 00a97272f2fe00c09dd954c21fffb4efebc208af (patch) | |
| tree | ea1e1dc99826158202fa692aa1c43a9d1711c4ad /editors/code | |
| parent | e0df2c9beed4107f66d185452fdbf0aed9271b8d (diff) | |
| download | rust-00a97272f2fe00c09dd954c21fffb4efebc208af.tar.gz rust-00a97272f2fe00c09dd954c21fffb4efebc208af.zip | |
automate braceless return substitution for long lines
Per [bjorn3][https://github.com/bjorn3] suggestion resolves cases where
an early return is moved to a separate line due to line width formatting.
This setting changes
```
if (a very long condition) return;
```
to
```
if (a very long
condition) {
return;
}
```
while keeping
```
if (short) return;
```
as is.
In pathological cases this may cause `npm run fix` not to fix formatting
in one go and may require running it twice.
Diffstat (limited to 'editors/code')
| -rw-r--r-- | editors/code/.eslintrc.js | 1 | ||||
| -rw-r--r-- | editors/code/src/ast_inspector.ts | 3 | ||||
| -rw-r--r-- | editors/code/src/snippets.ts | 3 |
3 files changed, 5 insertions, 2 deletions
diff --git a/editors/code/.eslintrc.js b/editors/code/.eslintrc.js index 684b5c6bd97..297e9fa1e5c 100644 --- a/editors/code/.eslintrc.js +++ b/editors/code/.eslintrc.js @@ -14,6 +14,7 @@ module.exports = { rules: { camelcase: ["error"], eqeqeq: ["error", "always", { null: "ignore" }], + curly: ["error", "multi-line"], "no-console": ["error", { allow: ["warn", "error"] }], "prefer-const": "error", "@typescript-eslint/member-delimiter-style": [ diff --git a/editors/code/src/ast_inspector.ts b/editors/code/src/ast_inspector.ts index fca992299ef..e57fb20e2cf 100644 --- a/editors/code/src/ast_inspector.ts +++ b/editors/code/src/ast_inspector.ts @@ -101,8 +101,9 @@ export class AstInspector implements vscode.HoverProvider, vscode.DefinitionProv doc: vscode.TextDocument, pos: vscode.Position ): vscode.ProviderResult<vscode.DefinitionLink[]> { - if (!this.rustEditor || doc.uri.toString() !== this.rustEditor.document.uri.toString()) + if (!this.rustEditor || doc.uri.toString() !== this.rustEditor.document.uri.toString()) { return; + } const astEditor = this.findAstTextEditor(); if (!astEditor) return; diff --git a/editors/code/src/snippets.ts b/editors/code/src/snippets.ts index 14c2121d08a..299d29c27ee 100644 --- a/editors/code/src/snippets.ts +++ b/editors/code/src/snippets.ts @@ -11,7 +11,7 @@ export async function applySnippetWorkspaceEdit(edit: vscode.WorkspaceEdit) { } for (const [uri, edits] of edit.entries()) { const editor = await editorFromUri(uri); - if (editor) + if (editor) { await editor.edit((builder) => { for (const indel of edits) { assert( @@ -21,6 +21,7 @@ export async function applySnippetWorkspaceEdit(edit: vscode.WorkspaceEdit) { builder.replace(indel.range, indel.newText); } }); + } } } |
