E 'facile per specificare le opzioni si escludono a vicenda con optparse-applicative:Come si fornisce un messaggio di errore specifico con optparse-applicative quando vengono fornite più opzioni mutuamente esclusive?
data Exclusive = E1 | E2
exclusiveParser :: Parser ExclusiveOption
exclusiveParser =
(flag' E1 (short 'e1')
<|> (flag' E2 (short 'e2')
È possibile che questo parser analizzerà sia -e1
o -e2
, ma non entrambi. L'azione optparse-applicativa predefinita quando vengono forniti sia sia -e2
è per stampare il messaggio di utilizzo dell'applicazione. Vorrei fornire all'utente un messaggio di errore specifico che li informa che non è possibile fornire siae -e2
, ma non vedo un modo ovvio per farlo.
Qualche suggerimento (o soluzione) sarebbe apprezzato?