-- | Common low-level parser definitions. module FlatParse.Common.Parser ( -- * Parser state token types -- $parser-state-token-types type PureMode , type IOMode , type STMode ) where import GHC.Exts import Data.Void ( Void ) {- $parser-state-token-types These type synonyms are used as parameters to @ParserT@. Different state tokens support different embedded effects. -} -- TODO 2023-01-17 raehik: perhaps more/better explanation? type PureMode = Proxy# Void type IOMode = State# RealWorld type STMode s = State# s