git.iko.soy/typeable/xml-lens
on master help sign in
relax version constraints
commit15454b4dbec53437c87808798e66708aae47c4f3 authorFumiaki Kinoshita <fumiexcel@gmail.com> dateSat 12 Apr 2014, 10:20 (13 years ago) parentb4d2014
2 files changed+11−8
Text/XML/Lens.hs+9−6 xml-lens.cabal+2−2
Text/XML/Lens.hs+9−6
@@ -20,6 +20,7 @@ module Text.XML.Lens (
2020 , localName
2121 , el
2222 , ell
23+ , named
2324 -- ** Attributes
2425 , attributeIs
2526 , attributeSatisfies
@@ -152,18 +153,20 @@ entire :: Traversal' Element Element
152153entire f e@(Element _ _ ns) = com <$> f e <*> traverse (_Element (entire f)) ns where
153154 com (Element n a _) = Element n a
154155
156+-- | Traverse elements which has the specified *local* name.
157+named :: Text -> Traversal' Element Element
158+named n f s
159+ | nameLocalName (elementName s) == n = f s
160+ | otherwise = pure s
161+
162+ell = named
163+
155164-- | Traverse elements which has the specified name.
156165el :: Name -> Traversal' Element Element
157166el n f s
158167 | elementName s == n = f s
159168 | otherwise = pure s
160169
161−-- | Traverse elements which has the specified *local* name.
162−ell :: Text -> Traversal' Element Element
163−ell n f s
164− | nameLocalName (elementName s) == n = f s
165− | otherwise = pure s
166−
167170attributeSatisfies :: Name -> (Text -> Bool) -> Traversal' Element Element
168171attributeSatisfies n p = filtered (maybe False p . preview (attrs . ix n))
169172
xml-lens.cabal+2−2
@@ -1,5 +1,5 @@
11name: xml-lens
2−version: 0.1.5
2+version: 0.1.6
33synopsis: Lenses, traversals, prisms for xml-conduit
44description: Lens-based DOM selector
55homepage: https://github.com/fumieval/xml-lens
@@ -20,4 +20,4 @@ library
2020 default-language: Haskell2010
2121 ghc-options: -Wall
2222 exposed-modules: Text.XML.Lens
23− build-depends: base ==4.*, lens >= 4.0 && < 4.2, containers >= 0.4.0 && < 0.6, text == 0.11.*, xml-conduit >= 1.1 && < 1.3
23+ build-depends: base ==4.*, lens >= 4.0 && < 4.4, containers >= 0.4.0 && < 0.7, text >= 0.7 && <2, xml-conduit >= 1.1 && < 1.4