AnyDocsAnd [ AnyDocsOr [ AnyDocsSingle (Just OptDoc { optDocTryArgument = False , optDocTrySwitch = False , optDocTryOption = True , optDocDasheds = [ DashedLong ('i' :| "nt") ] , optDocDefault = Nothing , optDocExamples = [] , optDocMetavar = Just "INT" , optDocHelp = Just "int or string" }) , AnyDocsSingle (Just OptDoc { optDocTryArgument = False , optDocTrySwitch = False , optDocTryOption = True , optDocDasheds = [ DashedLong ('s' :| "tring") ] , optDocDefault = Nothing , optDocExamples = [] , optDocMetavar = Just "STR" , optDocHelp = Just "int or string" }) ] , AnyDocsOr [ AnyDocsSingle (Just OptDoc { optDocTryArgument = False , optDocTrySwitch = True , optDocTryOption = False , optDocDasheds = [ DashedLong ('[' :| "no-]other") ] , optDocDefault = Nothing , optDocExamples = [] , optDocMetavar = Nothing , optDocHelp = Just "int or string" }) , AnyDocsSingle Nothing , AnyDocsSingle Nothing ] ]