HORIZON HASKELLDocslts/ghc-9.14.x7a6c33e2026-10-12Search packagesCtrl K
Theme: |

GHC 9.14.1 · lts/ghc-9.14.x · 7a6c33e · 2026-10-12

Moduleuniplate-1.6.13Haskell2010

Data.Generics.SYB

SYB compatibility layer. This module serves as a drop-in replacement in some situations for some of the SYB operations. Users should also import Data.Generics.Uniplate.Data.

SYB is described in the paper: "Scrap your boilerplate: a practical design pattern for generic programming" by Ralf Lammel and Simon Peyton Jones.

Synopsis
  • Packageuniplate-1.6.13
  • Exports12
  • LanguageHaskell2010
  • LicenceBSD-3-Clause
  • SourceSYB.hs
valuemkM :: (a -> m a) -> a -> m a
mkM == id
valueeverything :: Biplate b a => (r -> r -> r) -> (r, a -> r) -> b -> r

Use universe or universeBi, perhaps followed by a fold.

Not an exact equivalent to the SYB everything, as the operators may be applied in different orders.