haskell / c2hs

c2hs is a pre-processor for Haskell FFI bindings to C libraries
http://hackage.haskell.org/package/c2hs
Other
197 stars 50 forks source link

Haddock comments on enum constructors #271

Open gilgamec opened 2 years ago

gilgamec commented 2 years ago

Haddock comments in #fun commands are passed on to the generated file, so that imported function arguments can be documented. Is it possible to do the same for imported enums?

For example, if the C header file foo.h is

enum MyEnum{ FOO = 1, BAR = 2 };

and the CHS file is

#include "foo.h"

{# enum MyEnum
   as MyEnum
      { FOO as Foo -- ^ foo
      , BAR as Bar -- ^ bar
      }
#}

then the generated hs file defines MyEnum as

data MyEnum = Foo
            | Bar

The haddock comments have disappeared. Is it possible to maintain them during generation, so the generated file contains

data MyEnum = Foo -- ^ foo
            | Bar -- ^ bar