api-tools-0.4: DSL for generating API boilerplate and docs

Safe HaskellNone



Tool for generating documentation-friendly examples



class Example a whereSource

The Example class is used to generate a documentation-friendly example for each type in the model


example :: Gen aSource

Generator for example values; defaults to arbitrary if not specified

exampleTool :: APIToolSource

Tool to generate Example instances for types generated by datatypesTool. This depends on quickCheckTool.

samplesTool :: Name -> APIToolSource

Generate a list of (type name, sample generator) pairs corresponding to each type in the API, with samples encoded as JSON. This depends on the Example instances generated by exampleTool. It generates something like this:

 samples :: [(String, Gen Value)]
 samples = [("Foo", fmap toJSON (example :: Gen Foo)), ... ]