Интересно, есть ли способ получить имена модулей пакета клики из разбора файлов .cabal.
Я пытался использовать parsePackageDescription из Distribution.PackageDescription.Parse, но, например, когда я пытаюсь проанализировать .cabal самого пакета Cabal (http://hackage.haskell.org/package/Cabal-1.18.1.2/Cabal.cabal) библиотечное значение PackageDescription равно Nothing, хотя библиотека есть раздел с открытыми модулями и другими модулями в файле .cabal.
Так задумано или я что-то не так делаю? Кроме того, если это предназначено, кто-нибудь знает какой-либо другой простой способ получения имен модулей?
Заранее спасибо!
parsePackageDescription
, вы получаете значение типаGenericPackageDescription
. Чтобы получить окончательный PackageDescription, вам нужно запустить функциюflattenPackageDescription
из файлаDistribution.PackageDescription.Configuration
. Это окончательное описание пакета должно содержать информацию о библиотеке. - person fjh   schedule 03.04.2014PackageDescription
изGenericPackageDescription
, и не знал о функцииflattenPackageDescription
. - person majstroll   schedule 03.04.2014