packages feed

haskell-src-exts-1.16.0: tests/examples/HappyDoAction.hs.prettyprinter.golden

{-# LANGUAGE MagicHash #-}
module HappyDoAction where
 
foo :: Int#
happyDoAction i tk st
  = case action of
        0# -> happyFail i tk st
        -1# -> happyAccept i tk st
        n | (n <# (0# :: Int#)) -> (happyReduceArr ! rule) i tk st
          where rule = (I# ((negateInt# ((n +# (1# :: Int#))))))
        n -> happyShift new_state i tk st
          where new_state = (n -# (1# :: Int#))
  where off = indexShortOffAddr happyActOffsets st
        off_i = (off +# i)
        check
          = if (off_i >=# (0# :: Int#)) then
              (indexShortOffAddr happyCheck off_i ==# i) else False
        action
          | check = indexShortOffAddr happyTable off_i
          | otherwise = indexShortOffAddr happyDefActions st