    {-# LANGUAGE LambdaCase #-}

    module Ormolu.Printer.Meat.Declaration.Splice
      ( p_spliceDecl,
      )
    where

    import GHC
    import Ormolu.Printer.Combinators
    import Ormolu.Printer.Meat.Declaration.Value (p_hsSplice)

    p_spliceDecl :: SpliceDecl GhcPs -> R ()
    p_spliceDecl :: SpliceDecl GhcPs -> R ()
    p_spliceDecl = \case
      SpliceDecl NoExtField splice :: Located (HsSplice GhcPs)
    splice _explicit :: SpliceExplicitFlag
    _explicit -> Located (HsSplice GhcPs) -> (HsSplice GhcPs -> R ()) -> R ()
    forall a. Located a -> (a -> R ()) -> R ()
    located Located (HsSplice GhcPs)
    splice HsSplice GhcPs -> R ()
    p_hsSplice
      XSpliceDecl x :: XXSpliceDecl GhcPs
    x -> NoExtCon -> R ()
    forall a. NoExtCon -> a
    noExtCon NoExtCon
    XXSpliceDecl GhcPs
    x