ghc-language-haskell-extract
Module to automatically extract functions from the local code
'language-haskell-extract' contains some useful helper functions on top of Template Haskell. 'functionExtractor' extracts all functions after a regexp-pattern.>foo = "test">boo = "testing">bar = $(functionExtractor "oo$") will automagically extract the functions ending with 'oo' such as>bar = [("foo",foo), ("boo",boo)] This can be useful if you wish to extract all functions beginning with test (for a test-framework) or all functions beginning with wc (for a web service). 'functionExtractorMap' works like 'functionsExtractor' but applies a function over all function-pairs. This functions is useful if the common return type of the functions is a type class. Example:>secondTypeclassTest =>do let expected = ["45", "88.8", ""hej""]>actual = $(functionExtractorMap "^tc" [|n f ->show f|] )>expected '=? actual>>tcInt :: Integer>tcInt = 45>>tcDouble :: Double>tcDouble = 88.8>>tcString :: String>tcString = "hej".
BSD-3-Clause