noogle/codemod/README.md
2024-01-07 17:20:35 +01:00

1.2 KiB

Doc-comments Codemod

A simple codemod based on rnix. It migrates all comments automatically into the new markdown format.

Features

  • Fully automatic.
  • Changes all files from all directories (if needed).
  • Markdown output.
  • Re-aligns the indentation.

Example

input

  /* Throw if pred is false, else return pred.
     Intended to be used to augment asserts with helpful error messages.

     Example:
       assertMsg false "nope"
       stderr> error: nope
           
       assert assertMsg ("foo" == "bar") "foo is not bar, silly"; ""
       stderr> error: foo is not bar, silly

     Type:
       assertMsg :: Bool -> String -> Bool
  */
  assertMsg =

->

output

  /**
    Throw if pred is false, else return pred.
    Intended to be used to augment asserts with helpful error messages.

    # Example

    ```nix
    assertMsg false "nope"
               stderr> error: nope
    
               assert assertMsg ("foo" == "bar") "foo is not bar, silly"; ""
               stderr> error: foo is not bar, silly
    ```

    # Type

    ```
    assertMsg :: Bool -> String -> Bool
    ```
  */
  assertMsg =

Development

Enter the devshell

nix develop .#codemod