-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | High-performance CSS tokenizer and serializer.
--
-- See https://drafts.csswg.org/css-syntax/
@package css-syntax
@version 0.1.0.2
module Data.CSS.Syntax.Tokens
data Token
Whitespace :: Token
CDO :: Token
CDC :: Token
Comma :: Token
Colon :: Token
Semicolon :: Token
LeftParen :: Token
RightParen :: Token
LeftSquareBracket :: Token
RightSquareBracket :: Token
LeftCurlyBracket :: Token
RightCurlyBracket :: Token
SuffixMatch :: Token
SubstringMatch :: Token
PrefixMatch :: Token
DashMatch :: Token
IncludeMatch :: Token
Column :: Token
String :: !Text -> Token
BadString :: Token
Number :: !Text -> !NumericValue -> Token
Percentage :: !Text -> !NumericValue -> Token
Dimension :: !Text -> !NumericValue -> !Unit -> Token
Url :: !Text -> Token
BadUrl :: Token
Ident :: !Text -> Token
AtKeyword :: !Text -> Token
Function :: !Text -> Token
Hash :: !HashFlag -> !Text -> Token
Delim :: !Char -> Token
data NumericValue
-- | number without dot . or exponent e
NVInteger :: !Integer -> NumericValue
-- | number with dot . or exponent e
NVNumber :: !Scientific -> NumericValue
data HashFlag
HId :: HashFlag
HUnrestricted :: HashFlag
type Unit = Text
-- | Parse a Text into a list of Tokens.
--
-- https://drafts.csswg.org/css-syntax/#tokenization
tokenize :: Text -> [Token]
-- | Serialize a list of Tokens back into Text.
--
-- Serialization "round-trips" with parsing:
--
-- tokenize (serialize (tokenize s)) == tokenize s
--
-- https://drafts.csswg.org/css-syntax/#serialization
serialize :: [Token] -> Text
instance GHC.Classes.Eq Data.CSS.Syntax.Tokens.NumericValue
instance GHC.Show.Show Data.CSS.Syntax.Tokens.NumericValue
instance GHC.Classes.Eq Data.CSS.Syntax.Tokens.HashFlag
instance GHC.Show.Show Data.CSS.Syntax.Tokens.HashFlag
instance GHC.Classes.Eq Data.CSS.Syntax.Tokens.Token
instance GHC.Show.Show Data.CSS.Syntax.Tokens.Token