JetBrains / JetBrains/resharper-fsharp

Brace completion changes outer list to array in error

Open
#274 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
F#
Stars
351
Forks
55
Avg merge
9h 38m
Merged PRs (30d)
16

Description

Brace completion changes outer list to array in error.

Take an example like:

```fs
let x = [
[| (* start a new array before this element *) box 1; box"some key"|]
] // outer list is changed to array
```

Resulting in broken code after brace completion.
```fs
let x = [
[| [|box 1; box"some key"|]
|]
```

Another way to trigger it is:
```fs
let x = [(*start a new array directly before this array open, leaving no whitespace*)[||]]
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the brace-completion behavior for nested F# list and array delimiters, using the two examples in the issue to reproduce the problem. Done means completing the inner array no longer changes the outer list into an array, including when there is no whitespace between the openings.

Written by the indexing model from the issue text.

Assessment

Tech stack
fsharp
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.