enumerationTarget :: Parser EnumerationTarget
enumerationTarget = do
  s <- many1 letter
  case maybeRead s of
    Just target -> return target
    Nothing     -> let expect = "Expected oneof: "
                                ++ show [ minBound :: EnumerationTarget .. ]
                   in parserFail expect
enumerationTarget :: Parser EnumerationTarget
enumerationTarget = do
  s <- many1 letter
  case maybeRead s of
    Just target -> return target
    Nothing     -> let expect = "Expected oneof: "
                                ++ show [ minBound :: EnumerationTarget .. ]
                   in parserFail expect
enumerationTarget = do
  s <- many1 letter
  case maybeRead s of
    Just target -> return target
    Nothing     -> let expect = "Expected oneof: "
                                ++ show [ minBound :: EnumerationTarget .. ]
                   in parserFail expect