HORIZON HASKELLDocslts/ghc-10.0.x77a86622026-10-31Search packagesCtrl K
Theme: |

GHC 10.0.0.20260917 · lts/ghc-10.0.x · 77a8662 · 2026-10-31

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.