never executed always true always false
    1 module HelVM.HelMA.Automaton.Instruction.Groups.IOInstruction where
    2 
    3 import           HelVM.HelMA.Automaton.Instruction.Extras.Common
    4 -- | Types
    5 
    6 -- TODO convert to (Output/Input) (Char/Dec)
    7 
    8 data IOInstruction =
    9     OutputChar
   10   | OutputDec
   11   | InputChar
   12   | InputDec
   13   deriving stock (Eq , Read , Show)
   14 
   15 -- | Type Classes
   16 
   17 instance PrintAsm IOInstruction where
   18   printAsm = printIO
   19 
   20 -- | Internal
   21 
   22 printIO :: IOInstruction -> Text
   23 printIO OutputChar = "outputC"
   24 printIO OutputDec  = "outputD"
   25 printIO InputChar  = "inputC"
   26 printIO InputDec   = "inputD"