module HaskellWorks.Data.Xml.Lens where import Control.Lens import Data.Text (Text) import HaskellWorks.Data.Xml.Value isTagNamed :: Text -> Value -> Bool isTagNamed :: Text -> Value -> Bool isTagNamed Text a (XmlElement Text b [(Text, Text)] _ [Value] _) | Text a Text -> Text -> Bool forall a. Eq a => a -> a -> Bool == Text b = Bool True isTagNamed Text _ Value _ = Bool False tagNamed :: (Applicative f, Choice p) => Text -> Optic' p f Value Value tagNamed :: forall (f :: * -> *) (p :: * -> * -> *). (Applicative f, Choice p) => Text -> Optic' p f Value Value tagNamed = (Value -> Bool) -> Optic' p f Value Value forall (p :: * -> * -> *) (f :: * -> *) a. (Choice p, Applicative f) => (a -> Bool) -> Optic' p f a a filtered ((Value -> Bool) -> Optic' p f Value Value) -> (Text -> Value -> Bool) -> Text -> Optic' p f Value Value forall b c a. (b -> c) -> (a -> b) -> a -> c . Text -> Value -> Bool isTagNamed