-
-
Notifications
You must be signed in to change notification settings - Fork 200
Open
Labels
Description
Issue created from fantomas-online
Code
type MyCustomTypeWithAPrettyLongDescribingName = MyCustomConstructor1
let private myFunction
: string
-> (MyCustomTypeWithAPrettyLongDescribingName -> MyCustomTypeWithAPrettyLongDescribingName -> MyCustomTypeWithAPrettyLongDescribingName)
-> unit =
fun a fn -> ()Result
type MyCustomTypeWithAPrettyLongDescribingName = MyCustomConstructor1
let private myFunction
: string
-> (MyCustomTypeWithAPrettyLongDescribingName
-> MyCustomTypeWithAPrettyLongDescribingName
-> MyCustomTypeWithAPrettyLongDescribingName)
-> unit =
fun a fn -> ()
Gives compiler error
(5,56) (6, 14) error 10 parse
Incomplete structured construct at or before this point in binding. Expected ',' or other token.
Problem description
While upgrading from fantomas 4.7 to 6.2 we encountered this formatting issue. We worked around this by extracting the fn type to its own type (arguable making the code more readable :)).
type MyCustomTypeWithAPrettyLongDescribingName = MyCustomConstructor1
type Fn =
MyCustomTypeWithAPrettyLongDescribingName
-> MyCustomTypeWithAPrettyLongDescribingName
-> MyCustomTypeWithAPrettyLongDescribingName
let private myFunction: string -> Fn -> unit = fun a fn -> ()but the compiler error was unexpected.
Extra information
- The formatted result breaks my code.
- The formatted result gives compiler warnings.
- I or my company would be willing to help fix this.
- I would like a release if this problem is solved.
Options
Fantomas main branch at 1/1/1990
Default Fantomas configuration
Did you know that you can ignore files when formatting by using a .fantomasignore file?
PS: It's unlikely that someone else will solve your specific issue, as it's something that you have a personal stake in.