使用optparse-appplicative的程序的(类型化)参数列表

时间:2018-07-18 16:33:21

标签: haskell optparse-applicative

是否可以使用optparse-applicative从命令行程序中提取名称和类型的列表?

我正在+/-寻找ParserInfo a -> [(String,TypeRep)]类型的某些功能

1 个答案:

答案 0 :(得分:2)

没有,没有办法。相关的位是:

data ParserInfo a = ParserInfo   
    { infoParser :: Parser a
    , -- ...
    }

data Parser a
  = forall x . MultP (Parser (x -> a)) (Parser x)
  | forall x . BindP (Parser x) (x -> Parser a)
  | -- ...

由于xMultP的{​​{1}}是存在量化的,并且不带有BindP约束,所以有关{的叶子处使用的类型的信息{1}}树在运行时丢失。