{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DeriveFunctor #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TypeOperators #-}
module LibRISCV.Effects.Logging.Language where
import Control.Monad.Freer.TH (makeEffect)
import LibRISCV.Internal.Decoder.Opcodes (InstructionType)
data LogInstructionFetch r where
LogFetched :: InstructionType -> LogInstructionFetch ()
makeEffect ''LogInstructionFetch