{-# LANGUAGE CPP #-}

module PlutusTx.Compiler.Compat
  ( maybeGetClassOpId
  ) where

import GHC.Core.Class qualified as GHC
import GHC.Types.Id.Info qualified as GHC

maybeGetClassOpId :: GHC.IdDetails -> Maybe GHC.Class
#if __GLASGOW_HASKELL__ >= 912
maybeGetClassOpId (GHC.ClassOpId cls _) = Just cls
maybeGetClassOpId _ = Nothing
#else
maybeGetClassOpId :: IdDetails -> Maybe Class
maybeGetClassOpId (GHC.ClassOpId Class
cls) = Class -> Maybe Class
forall a. a -> Maybe a
Just Class
cls
maybeGetClassOpId IdDetails
_ = Maybe Class
forall a. Maybe a
Nothing
#endif