refactor lexer #2

Merged
primrose merged 13 commits from primrose/haddock2:leana8959 into dev 2025-09-26 14:44:47 +00:00
Showing only changes of commit 75c4817166 - Show all commits

View file

@ -181,8 +181,8 @@ anchors =
]
moduleName :: Parser Text
moduleName = intercalate "." . fmap Text.pack <$> upperId `sepBy1` char '.'
moduleNames :: Parser Text
moduleNames = intercalate "." . fmap Text.pack <$> upperId `sepBy1` char '.'
upperId :: Parser String
upperId = (:) <$> satisfy isUpper <*> many1 identifierChar
@ -197,7 +197,7 @@ modules :: Lexer
modules = between (char '"') (char '"') inner
where
inner = do
module_ <- located $ Module <$> moduleName
module_ <- located $ Module <$> moduleNames
mAnchor <- optionMaybe (located $ anchorHash *> (Anchor <$> anchorText))
pure $ case mAnchor of
Just anchor -> [module_, anchor]