globItem :: ParsecT String u Identity GlobItem
globItem =
  try (AnyChar <$ string "?")
    <|> try (AnyCharMultiple <$ string "*")
    <|> try
      ( do
          str <- many1 . noneOf $ "/ *?"
          return . LiteralString . toS $ str
      )
globItem :: ParsecT String u Identity GlobItem
globItem =
  try (AnyChar <$ string "?")
    <|> try (AnyCharMultiple <$ string "*")
    <|> try
      ( do
          str <- many1 . noneOf $ "/ *?"
          return . LiteralString . toS $ str
      )
globItem =
  try (AnyChar <$ string "?")
    <|> try (AnyCharMultiple <$ string "*")
    <|> try
      ( do
          str <- many1 . noneOf $ "/ *?"
          return . LiteralString . toS $ str
      )