git.iko.soy/typeable/html-parse
on master help sign in
More rearranging of export list

And rename tagStream to parseTokens

commit0ee39423a4f0c54438b70a452aaed05ac8f9bcea authorBen Gamari <ben@smart-cactus.org> dateWed 13 Apr 2016, 23:12 (11 years ago) parent5b0b020
2 files changed+10−9
Benchmark.hs+2−2 Text/HTML/Parser.hs+8−7
Benchmark.hs+2−2
@@ -11,12 +11,12 @@ main = do
1111 [ bgroup "Forced"
1212 [ bench "tagsoup fast Text" $ nf (Soup.parseTagsOptions Soup.parseOptionsFast) t
1313 , bench "tagsoup normal Text" $ nf (Soup.parseTagsOptions Soup.parseOptions) t
14− , bench "html-parser" $ nf Me.tagStream t
14+ , bench "html-parser" $ nf Me.parseTokens t
1515 ]
1616 , bgroup "length"
1717 [ bench "tagsoup fast Text" $ whnf (length . Soup.parseTagsOptions Soup.parseOptionsFast) t
1818 , bench "tagsoup normal Text" $ whnf (length . Soup.parseTagsOptions Soup.parseOptions) t
19− , bench "html-parser" $ whnf (length . Me.tagStream) t
19+ , bench "html-parser" $ whnf (length . Me.parseTokens) t
2020 ]
2121 ]
2222
Text/HTML/Parser.hs+8−7
@@ -7,8 +7,8 @@
77--
88module Text.HTML.Parser
99 ( -- * Parsing
10− token
11− , tagStream
10+ parseTokens
11+ , token
1212 -- * Types
1313 , Token(..)
1414 , TagName, AttrName, AttrValue
@@ -41,13 +41,14 @@ type AttrValue = Text
4141
4242-- | An HTML token
4343data Token
44− -- | An opening tag. Attribute ordering is arbitrary
44+ -- | An opening tag. Attribute ordering is arbitrary.
4545 = TagOpen !TagName [Attr]
4646 -- | A closing tag.
4747 | TagClose !TagName
4848 -- | The content between tags.
49− | ContentChar !Char
5049 | ContentText !Text
50+ -- | A single character of content
51+ | ContentChar !Char
5152 -- | Contents of a comment.
5253 | Comment !Builder
5354 -- | Doctype
@@ -245,9 +246,9 @@ doctype = do
245246bogusComment :: Parser Token
246247bogusComment = fail "Bogus comment"
247248
248−-- | Produce a lazy list of tokens.
249−tagStream :: Text -> [Token]
250−tagStream = unfoldr f
249+-- | Parse a lazy list of tokens.
250+parseTokens :: Text -> [Token]
251+parseTokens = unfoldr f
251252 where
252253 f :: Text -> Maybe (Token, Text)
253254 f t