Skip to content

let binding after match lambda inside nested module is moved outside of nested module #2214

Closed
@dawedawe

Description

Issue created from fantomas-online

Code

module Outer

let sort fallback (f: int -> string list) = ()

module Inner =

    let f =
        sort
            "Name"
            (function
             | 1 -> ["One"]
             | _ -> ["Not One"])

    let g () = 23

Result

module Outer

let sort fallback (f: int -> string list) = ()

module Inner =

    let f =
        sort "Name" (function
            | 1 -> [ "One" ]
            | _ -> [ "Not One" ])

let g () = 23

Problem description

The second function (g) inside the Inner module is moved outside the module.

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.

Options

Fantomas master branch at 2022-04-29T20:35:47Z - b07f830

Default Fantomas configuration

Did you know that you can ignore files when formatting from fantomas-tool or the FAKE targets by using a .fantomasignore file?

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions