module Data.Aeson.Schema.Utils.Invariant ( unreachable, ) where {- | An error function to indicate that a branch is unreachable. Provides a useful error message if it ends up happening, pointing users to write a bug report. -} unreachable :: String -> a unreachable msg = error $ unlines [ "`aeson-schemas` internal error: " ++ msg , "Please file a bug report at https://github.com/LeapYear/aeson-schemas/issues/" ]