toml-parser
Copyright(c) Eric Mertens 2023
LicenseISC
Maintaineremertens@gmail.com
Safe HaskellNone
LanguageHaskell2010

Toml.Syntax.Position

Description

This module provides the Position type for tracking locations in files while doing lexing and parsing for providing more useful error messages.

This module assumes 8 column wide tab stops.

Synopsis

Documentation

data Located a Source #

A value annotated with its text file position

Constructors

Located 

Fields

Instances

Instances details
Foldable Located Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Methods

fold :: Monoid m => Located m -> m #

foldMap :: Monoid m => (a -> m) -> Located a -> m #

foldMap' :: Monoid m => (a -> m) -> Located a -> m #

foldr :: (a -> b -> b) -> b -> Located a -> b #

foldr' :: (a -> b -> b) -> b -> Located a -> b #

foldl :: (b -> a -> b) -> b -> Located a -> b #

foldl' :: (b -> a -> b) -> b -> Located a -> b #

foldr1 :: (a -> a -> a) -> Located a -> a #

foldl1 :: (a -> a -> a) -> Located a -> a #

toList :: Located a -> [a] #

null :: Located a -> Bool #

length :: Located a -> Int #

elem :: Eq a => a -> Located a -> Bool #

maximum :: Ord a => Located a -> a #

minimum :: Ord a => Located a -> a #

sum :: Num a => Located a -> a #

product :: Num a => Located a -> a #

Traversable Located Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Methods

traverse :: Applicative f => (a -> f b) -> Located a -> f (Located b) #

sequenceA :: Applicative f => Located (f a) -> f (Located a) #

mapM :: Monad m => (a -> m b) -> Located a -> m (Located b) #

sequence :: Monad m => Located (m a) -> m (Located a) #

Functor Located Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Methods

fmap :: (a -> b) -> Located a -> Located b #

(<$) :: a -> Located b -> Located a #

Read a => Read (Located a) Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Show a => Show (Located a) Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Methods

showsPrec :: Int -> Located a -> ShowS #

show :: Located a -> String #

showList :: [Located a] -> ShowS #

data Position Source #

A position in a text file

Constructors

Position 

Fields

Instances

Instances details
Read Position Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Show Position Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Eq Position Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

Ord Position Source #

Default instance

Instance details

Defined in Toml.Syntax.Position

startPos :: Position Source #

The initial Position for the start of a file

move :: Char -> Position -> Position Source #

Adjust a file position given a single character handling newlines and tabs. All other characters are considered to fill exactly one column.