-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | A Microformats 2 parser.
--   
--   A parser for Microformats 2
--   (http:/<i>microformats.org</i>wiki/microformats2), a simple way to
--   describe structured information in HTML.
@package microformats2-parser
@version 1.0.1.7

module Data.Microformats2.Parser.Util
if' :: Bool -> Maybe a -> Maybe a
unless' :: Bool -> Maybe a -> Maybe a
listToMaybeList :: [α] -> Maybe [α]
stripQueryString :: Text -> Text
groupBy' :: (Ord β) => (α -> β) -> [α] -> [(β, [α])]
expandSnd :: Foldable φ => φ ([α], β) -> [(α, β)]
resolveURI :: Maybe URI -> Text -> Text
collapseWhitespace :: Text -> Text
emptyVal :: Value -> Bool
renderInner :: Element -> Text
vsingleton :: Maybe Text -> Value
extractVector :: Value -> Array
mergeProps :: (τ, [(α, Value)]) -> (τ, Value)

module Data.Microformats2.Parser.HtmlUtil
data HtmlContentMode
Unsafe :: HtmlContentMode
Escape :: HtmlContentMode
Sanitize :: HtmlContentMode
getInnerHtml :: Maybe URI -> Element -> Maybe Text
getInnerHtmlSanitized :: Maybe URI -> Element -> Maybe Text
getInnerTextRaw :: Element -> Maybe Text
getInnerTextWithImgs :: Element -> Maybe Text
getProcessedInnerHtml :: HtmlContentMode -> Maybe URI -> Element -> Maybe Text
deduplicateElements :: [Element] -> [Element]
unescapeHtml :: Text -> Text
instance GHC.Classes.Eq Data.Microformats2.Parser.HtmlUtil.HtmlContentMode
instance GHC.Show.Show Data.Microformats2.Parser.HtmlUtil.HtmlContentMode

module Data.Microformats2.Parser.Date
data Date
Date :: Int -> Int -> Int -> Date
data HourType
TwentyFourHour :: HourType
AMHour :: HourType
PMHour :: HourType
data Time
Time :: Int -> Int -> Int -> Time
data DateTime
DateTime :: Date -> Time -> DateTime
data ZoneType
Plus :: ZoneType
Minus :: ZoneType
data Zone
Zone :: ZoneType -> Int -> Int -> Zone
data TimeZone
TimeZone :: Time -> Zone -> TimeZone
data DateTimeZone
DateTimeZone :: DateTime -> Zone -> DateTimeZone
data DTPart
DatePart :: Date -> DTPart
TimePart :: Time -> DTPart
ZonePart :: Zone -> DTPart
TimeZonePart :: TimeZone -> DTPart
DateTimePart :: DateTime -> DTPart
DateTimeZonePart :: DateTimeZone -> DTPart
isDatePart :: DTPart -> Bool
isTimePart :: DTPart -> Bool
isZonePart :: DTPart -> Bool
isTimeZonePart :: DTPart -> Bool
isDateTimePart :: DTPart -> Bool
isDateTimeZonePart :: DTPart -> Bool
parseDate :: Parser Date
parseHourType :: Parser HourType
parseTime :: Parser Time
parseZone :: Parser Zone
parseTimeZone :: Parser TimeZone
parseDateTime :: Parser DateTime
parseDateTimeZone :: Parser DateTimeZone
parseDTPart :: Parser DTPart
parseDTParts :: (Traversable φ, Monoid (φ DTPart)) => φ Text -> φ DTPart
normalizeDTParts :: (Foldable φ) => φ DTPart -> Maybe DTPart
instance GHC.Show.Show Data.Microformats2.Parser.Date.Date
instance GHC.Show.Show Data.Microformats2.Parser.Date.Time
instance GHC.Show.Show Data.Microformats2.Parser.Date.DateTime
instance GHC.Show.Show Data.Microformats2.Parser.Date.Zone
instance GHC.Show.Show Data.Microformats2.Parser.Date.TimeZone
instance GHC.Show.Show Data.Microformats2.Parser.Date.DateTimeZone
instance GHC.Show.Show Data.Microformats2.Parser.Date.DTPart

module Data.Microformats2.Parser.Property
unwrapName :: (Name, α) -> (Text, α)
classes :: Element -> [Text]
isPClass :: Text -> Bool
isUClass :: Text -> Bool
isEClass :: Text -> Bool
isDtClass :: Text -> Bool
isPropertyClass :: Text -> Bool
isMf2Class :: Text -> Bool
isProperty :: Element -> Bool
propertyElements :: Traversal' Element Element
hasOneClass :: [String] -> Traversal' Element Element
hasClass :: String -> Traversal' Element Element
getOnlyChildren :: Element -> [Element]
getOnlyChild :: Name -> Element -> Maybe Element
getOnlyOfType :: Name -> Element -> Maybe Element
els :: [Name] -> Traversal' Element Element
getAbbrTitle :: Element -> Maybe Text
getDataInputValue :: Element -> Maybe Text
getImgSrc :: Element -> Maybe Text
getObjectData :: Element -> Maybe Text
getImgAreaAlt :: Element -> Maybe Text
getAAreaHref :: Element -> Maybe Text
getImgAudioVideoSourceSrc :: Element -> Maybe Text
getTimeInsDelDatetime :: Element -> Maybe Text
getOnlyChildImgAreaAlt :: Element -> Maybe Text
getOnlyChildAbbrTitle :: Element -> Maybe Text
getOnlyOfTypeImgSrc :: Element -> Maybe Text
getOnlyOfTypeObjectData :: Element -> Maybe Text
getOnlyOfTypeAAreaHref :: Element -> Maybe Text
extractValue :: Element -> Maybe Text
extractValueTitle :: Element -> Maybe Text
extractValueClassPattern :: [Element -> Maybe Text] -> Element -> Maybe [Text]
extractValueClassPatternConcat :: [Element -> Maybe Text] -> Element -> Maybe Text
extractValueClassPatternDate :: [Element -> Maybe Text] -> Element -> Maybe Text
extractP :: Element -> Maybe Text
extractU :: Element -> Maybe (Text, Bool)
extractDt :: Element -> Maybe Text
implyProperty :: String -> Element -> Maybe Text

module Data.Microformats2.Parser
data Mf2ParserSettings
Mf2ParserSettings :: HtmlContentMode -> Maybe URI -> Mf2ParserSettings
[htmlMode] :: Mf2ParserSettings -> HtmlContentMode
[baseUri] :: Mf2ParserSettings -> Maybe URI
data HtmlContentMode
Unsafe :: HtmlContentMode
Escape :: HtmlContentMode
Sanitize :: HtmlContentMode

-- | Parses Microformats 2 from an HTML Element into a JSON Value.
parseMf2 :: Mf2ParserSettings -> Element -> Value
extractProperty :: Mf2ParserSettings -> Text -> Element -> Value
documentRoot :: Document -> Element
parseLBS :: ByteString -> Document
sinkDoc :: MonadThrow m => Sink ByteString m Document
instance GHC.Classes.Eq Data.Microformats2.Parser.Mf2ParserSettings
instance GHC.Show.Show Data.Microformats2.Parser.Mf2ParserSettings
instance Data.Default.Class.Default Data.Microformats2.Parser.Mf2ParserSettings
