hnix-0.16.0: Haskell implementation of the Nix language
Safe HaskellNone
LanguageHaskell2010

Nix.Expr.Types.Annotated

Description

The source location annotated nix expression type and supporting types.

Synopsis

Documentation

type Ann ann f = Fix (AnnF ann f) Source #

type AnnF ann f = Compose (AnnUnit ann) f Source #

data AnnUnit ann expr Source #

A type constructor applied to a type along with an annotation

Intended to be used with Fix: type MyType = Fix (Compose (AnnUnit Annotation) F)

Constructors

AnnUnit 

Fields

Instances

Instances details
ToJSON2 AnnUnit Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftToJSON2 :: (a -> Value) -> ([a] -> Value) -> (b -> Value) -> ([b] -> Value) -> AnnUnit a b -> Value #

liftToJSONList2 :: (a -> Value) -> ([a] -> Value) -> (b -> Value) -> ([b] -> Value) -> [AnnUnit a b] -> Value #

liftToEncoding2 :: (a -> Encoding) -> ([a] -> Encoding) -> (b -> Encoding) -> ([b] -> Encoding) -> AnnUnit a b -> Encoding #

liftToEncodingList2 :: (a -> Encoding) -> ([a] -> Encoding) -> (b -> Encoding) -> ([b] -> Encoding) -> [AnnUnit a b] -> Encoding #

FromJSON2 AnnUnit Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftParseJSON2 :: (Value -> Parser a) -> (Value -> Parser [a]) -> (Value -> Parser b) -> (Value -> Parser [b]) -> Value -> Parser (AnnUnit a b) #

liftParseJSONList2 :: (Value -> Parser a) -> (Value -> Parser [a]) -> (Value -> Parser b) -> (Value -> Parser [b]) -> Value -> Parser [AnnUnit a b] #

Eq2 AnnUnit Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> AnnUnit a c -> AnnUnit b d -> Bool #

Ord2 AnnUnit Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> AnnUnit a c -> AnnUnit b d -> Ordering #

Read2 AnnUnit Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftReadsPrec2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> Int -> ReadS (AnnUnit a b) #

liftReadList2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> ReadS [AnnUnit a b] #

liftReadPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec (AnnUnit a b) #

liftReadListPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec [AnnUnit a b] #

Show2 AnnUnit Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> AnnUnit a b -> ShowS #

liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [AnnUnit a b] -> ShowS #

Binary NExprLoc Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

put :: NExprLoc -> Put #

get :: Get NExprLoc #

putList :: [NExprLoc] -> Put #

Serialise NExprLoc Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

ToExpr NExprLoc Source # 
Instance details

Defined in Nix.TH

Functor (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

fmap :: (a -> b) -> AnnUnit ann a -> AnnUnit ann b #

(<$) :: a -> AnnUnit ann b -> AnnUnit ann a #

Foldable (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

fold :: Monoid m => AnnUnit ann m -> m #

foldMap :: Monoid m => (a -> m) -> AnnUnit ann a -> m #

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

foldr :: (a -> b -> b) -> b -> AnnUnit ann a -> b #

foldr' :: (a -> b -> b) -> b -> AnnUnit ann a -> b #

foldl :: (b -> a -> b) -> b -> AnnUnit ann a -> b #

foldl' :: (b -> a -> b) -> b -> AnnUnit ann a -> b #

foldr1 :: (a -> a -> a) -> AnnUnit ann a -> a #

foldl1 :: (a -> a -> a) -> AnnUnit ann a -> a #

toList :: AnnUnit ann a -> [a] #

null :: AnnUnit ann a -> Bool #

length :: AnnUnit ann a -> Int #

elem :: Eq a => a -> AnnUnit ann a -> Bool #

maximum :: Ord a => AnnUnit ann a -> a #

minimum :: Ord a => AnnUnit ann a -> a #

sum :: Num a => AnnUnit ann a -> a #

product :: Num a => AnnUnit ann a -> a #

Traversable (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

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

sequenceA :: Applicative f => AnnUnit ann (f a) -> f (AnnUnit ann a) #

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

sequence :: Monad m => AnnUnit ann (m a) -> m (AnnUnit ann a) #

ToJSON ann => ToJSON1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftToJSON :: (a -> Value) -> ([a] -> Value) -> AnnUnit ann a -> Value #

liftToJSONList :: (a -> Value) -> ([a] -> Value) -> [AnnUnit ann a] -> Value #

liftToEncoding :: (a -> Encoding) -> ([a] -> Encoding) -> AnnUnit ann a -> Encoding #

liftToEncodingList :: (a -> Encoding) -> ([a] -> Encoding) -> [AnnUnit ann a] -> Encoding #

FromJSON ann => FromJSON1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftParseJSON :: (Value -> Parser a) -> (Value -> Parser [a]) -> Value -> Parser (AnnUnit ann a) #

liftParseJSONList :: (Value -> Parser a) -> (Value -> Parser [a]) -> Value -> Parser [AnnUnit ann a] #

Eq ann => Eq1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftEq :: (a -> b -> Bool) -> AnnUnit ann a -> AnnUnit ann b -> Bool #

Ord ann => Ord1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftCompare :: (a -> b -> Ordering) -> AnnUnit ann a -> AnnUnit ann b -> Ordering #

Read ann => Read1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (AnnUnit ann a) #

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [AnnUnit ann a] #

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (AnnUnit ann a) #

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [AnnUnit ann a] #

Show ann => Show1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> AnnUnit ann a -> ShowS #

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [AnnUnit ann a] -> ShowS #

Binary r => Binary (NExprLocF r) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

put :: NExprLocF r -> Put #

get :: Get (NExprLocF r) #

putList :: [NExprLocF r] -> Put #

NFData ann => NFData1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftRnf :: (a -> ()) -> AnnUnit ann a -> () #

Hashable ann => Hashable1 (AnnUnit ann) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

liftHashWithSalt :: (Int -> a -> Int) -> Int -> AnnUnit ann a -> Int #

Serialise r => Serialise (NExprLocF r) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Generic1 (AnnUnit ann :: Type -> Type) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Associated Types

type Rep1 (AnnUnit ann) :: k -> Type #

Methods

from1 :: forall (a :: k). AnnUnit ann a -> Rep1 (AnnUnit ann) a #

to1 :: forall (a :: k). Rep1 (AnnUnit ann) a -> AnnUnit ann a #

(Eq ann, Eq expr) => Eq (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

(==) :: AnnUnit ann expr -> AnnUnit ann expr -> Bool #

(/=) :: AnnUnit ann expr -> AnnUnit ann expr -> Bool #

(Data ann, Data expr) => Data (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AnnUnit ann expr -> c (AnnUnit ann expr) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (AnnUnit ann expr) #

toConstr :: AnnUnit ann expr -> Constr #

dataTypeOf :: AnnUnit ann expr -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (AnnUnit ann expr)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (AnnUnit ann expr)) #

gmapT :: (forall b. Data b => b -> b) -> AnnUnit ann expr -> AnnUnit ann expr #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AnnUnit ann expr -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AnnUnit ann expr -> r #

gmapQ :: (forall d. Data d => d -> u) -> AnnUnit ann expr -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> AnnUnit ann expr -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> AnnUnit ann expr -> m (AnnUnit ann expr) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnUnit ann expr -> m (AnnUnit ann expr) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnUnit ann expr -> m (AnnUnit ann expr) #

(Ord ann, Ord expr) => Ord (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

compare :: AnnUnit ann expr -> AnnUnit ann expr -> Ordering #

(<) :: AnnUnit ann expr -> AnnUnit ann expr -> Bool #

(<=) :: AnnUnit ann expr -> AnnUnit ann expr -> Bool #

(>) :: AnnUnit ann expr -> AnnUnit ann expr -> Bool #

(>=) :: AnnUnit ann expr -> AnnUnit ann expr -> Bool #

max :: AnnUnit ann expr -> AnnUnit ann expr -> AnnUnit ann expr #

min :: AnnUnit ann expr -> AnnUnit ann expr -> AnnUnit ann expr #

(Read ann, Read expr) => Read (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

readsPrec :: Int -> ReadS (AnnUnit ann expr) #

readList :: ReadS [AnnUnit ann expr] #

readPrec :: ReadPrec (AnnUnit ann expr) #

readListPrec :: ReadPrec [AnnUnit ann expr] #

(Show ann, Show expr) => Show (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

showsPrec :: Int -> AnnUnit ann expr -> ShowS #

show :: AnnUnit ann expr -> String #

showList :: [AnnUnit ann expr] -> ShowS #

Generic (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Associated Types

type Rep (AnnUnit ann expr) :: Type -> Type #

Methods

from :: AnnUnit ann expr -> Rep (AnnUnit ann expr) x #

to :: Rep (AnnUnit ann expr) x -> AnnUnit ann expr #

(Hashable ann, Hashable expr) => Hashable (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

hashWithSalt :: Int -> AnnUnit ann expr -> Int #

hash :: AnnUnit ann expr -> Int #

(Binary ann, Binary a) => Binary (AnnUnit ann a) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

put :: AnnUnit ann a -> Put #

get :: Get (AnnUnit ann a) #

putList :: [AnnUnit ann a] -> Put #

(NFData ann, NFData expr) => NFData (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

rnf :: AnnUnit ann expr -> () #

(Serialise ann, Serialise a) => Serialise (AnnUnit ann a) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

encode :: AnnUnit ann a -> Encoding #

decode :: Decoder s (AnnUnit ann a) #

encodeList :: [AnnUnit ann a] -> Encoding #

decodeList :: Decoder s [AnnUnit ann a] #

Monad m => MonadState (HashMap Path NExprLoc, HashMap Text Text) (StandardTF r m) Source # 
Instance details

Defined in Nix.Standard

type Rep1 (AnnUnit ann :: Type -> Type) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

type Rep1 (AnnUnit ann :: Type -> Type) = D1 ('MetaData "AnnUnit" "Nix.Expr.Types.Annotated" "hnix-0.16.0-8yNt853wvoc5yRPRKlu02G" 'False) (C1 ('MetaCons "AnnUnit" 'PrefixI 'True) (S1 ('MetaSel ('Just "annotation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann) :*: S1 ('MetaSel ('Just "annotated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))
type Rep (AnnUnit ann expr) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

type Rep (AnnUnit ann expr) = D1 ('MetaData "AnnUnit" "Nix.Expr.Types.Annotated" "hnix-0.16.0-8yNt853wvoc5yRPRKlu02G" 'False) (C1 ('MetaCons "AnnUnit" 'PrefixI 'True) (S1 ('MetaSel ('Just "annotation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann) :*: S1 ('MetaSel ('Just "annotated") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 expr)))

data SrcSpan Source #

Demarcation of a chunk in a source file.

Constructors

SrcSpan 

Instances

Instances details
Eq SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

(==) :: SrcSpan -> SrcSpan -> Bool #

(/=) :: SrcSpan -> SrcSpan -> Bool #

Data SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SrcSpan -> c SrcSpan #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SrcSpan #

toConstr :: SrcSpan -> Constr #

dataTypeOf :: SrcSpan -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SrcSpan) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SrcSpan) #

gmapT :: (forall b. Data b => b -> b) -> SrcSpan -> SrcSpan #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpan -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpan -> r #

gmapQ :: (forall d. Data d => d -> u) -> SrcSpan -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SrcSpan -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SrcSpan -> m SrcSpan #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpan -> m SrcSpan #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpan -> m SrcSpan #

Ord SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Show SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Generic SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Associated Types

type Rep SrcSpan :: Type -> Type #

Methods

from :: SrcSpan -> Rep SrcSpan x #

to :: Rep SrcSpan x -> SrcSpan #

Semigroup SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Hashable SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

hashWithSalt :: Int -> SrcSpan -> Int #

hash :: SrcSpan -> Int #

ToJSON SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

FromJSON SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Binary SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

put :: SrcSpan -> Put #

get :: Get SrcSpan #

putList :: [SrcSpan] -> Put #

Binary NExprLoc Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

put :: NExprLoc -> Put #

get :: Get NExprLoc #

putList :: [NExprLoc] -> Put #

NFData SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

rnf :: SrcSpan -> () #

Serialise SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Serialise NExprLoc Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

ToExpr NExprLoc Source # 
Instance details

Defined in Nix.TH

Binary r => Binary (NExprLocF r) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Methods

put :: NExprLocF r -> Put #

get :: Get (NExprLocF r) #

putList :: [NExprLocF r] -> Put #

Serialise r => Serialise (NExprLocF r) Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

Has (Context m t) SrcSpan Source # 
Instance details

Defined in Nix.Context

Monad m => MonadState (HashMap Path NExprLoc, HashMap Text Text) (StandardTF r m) Source # 
Instance details

Defined in Nix.Standard

type Rep SrcSpan Source # 
Instance details

Defined in Nix.Expr.Types.Annotated

type Rep SrcSpan = D1 ('MetaData "SrcSpan" "Nix.Expr.Types.Annotated" "hnix-0.16.0-8yNt853wvoc5yRPRKlu02G" 'False) (C1 ('MetaCons "SrcSpan" 'PrefixI 'True) (S1 ('MetaSel ('Just "spanBegin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SourcePos) :*: S1 ('MetaSel ('Just "spanEnd") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SourcePos)))

pattern Ann :: forall ann (f :: Type -> Type). ann -> f (Ann ann f) -> Ann ann f Source #

Pattern: Fix (Compose (AnnUnit _ _)). Fix composes units of (annotations & the annotated) into one object. Giving annotated expression.

pattern AnnF :: ann -> f a -> Compose (AnnUnit ann) f a Source #

Pattern: (Compose (AnnUnit _ _)).

annUnitToAnn :: AnnUnit ann (f (Ann ann f)) -> Ann ann f Source #

type NExprLoc = Fix NExprLocF Source #

Annotated Nix expression (each subexpression direct to its source location).

pattern NAssertAnnF :: SrcSpan -> r -> r -> NExprLocF r Source #

pattern NWithAnnF :: SrcSpan -> r -> r -> NExprLocF r Source #

pattern NIfAnnF :: SrcSpan -> r -> r -> r -> NExprLocF r Source #

pattern NLetAnnF :: SrcSpan -> [Binding r] -> r -> NExprLocF r Source #

pattern NAbsAnnF :: SrcSpan -> Params r -> r -> NExprLocF r Source #

pattern NHasAttrAnnF :: SrcSpan -> r -> NAttrPath r -> NExprLocF r Source #

pattern NSelectAnnF :: SrcSpan -> Maybe r -> r -> NAttrPath r -> NExprLocF r Source #

pattern NBinaryAnnF :: SrcSpan -> NBinaryOp -> r -> r -> NExprLocF r Source #

pattern NUnaryAnnF :: SrcSpan -> NUnaryOp -> r -> NExprLocF r Source #

pattern NListAnnF :: SrcSpan -> [r] -> NExprLocF r Source #

pattern NStrAnnF :: SrcSpan -> NString r -> NExprLocF r Source #

pattern NConstantAnnF :: SrcSpan -> NAtom -> NExprLocF r Source #

Pattern systems for matching on NExprLocF constructions.

stripAnnF :: AnnF ann f r -> f r Source #

stripAnnotation :: Functor f => Ann ann f -> Fix f Source #

data SourcePos #

The data type SourcePos represents source positions. It contains the name of the source file, a line number, and a column number. Source line and column positions change intensively during parsing, so we need to make them strict to avoid memory leaks.

Constructors

SourcePos 

Fields

Instances

Instances details
Eq SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Data SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SourcePos -> c SourcePos #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SourcePos #

toConstr :: SourcePos -> Constr #

dataTypeOf :: SourcePos -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SourcePos) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SourcePos) #

gmapT :: (forall b. Data b => b -> b) -> SourcePos -> SourcePos #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SourcePos -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SourcePos -> r #

gmapQ :: (forall d. Data d => d -> u) -> SourcePos -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> SourcePos -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> SourcePos -> m SourcePos #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SourcePos -> m SourcePos #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SourcePos -> m SourcePos #

Ord SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Read SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Show SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Generic SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Associated Types

type Rep SourcePos :: Type -> Type #

Hashable SourcePos Source # 
Instance details

Defined in Nix.Expr.Types

ToJSON SourcePos Source # 
Instance details

Defined in Nix.Expr.Types

FromJSON SourcePos Source # 
Instance details

Defined in Nix.Expr.Types

Binary SourcePos Source # 
Instance details

Defined in Nix.Expr.Types

NFData SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

Methods

rnf :: SourcePos -> () #

Serialise SourcePos Source # 
Instance details

Defined in Nix.Expr.Types

Convertible e t f m => ToValue SourcePos m (NValue' t f m (NValue t f m)) Source # 
Instance details

Defined in Nix.Convert

Methods

toValue :: SourcePos -> m (NValue' t f m (NValue t f m)) Source #

(Convertible e t f m, ToValue a m (NValue t f m)) => ToValue (AttrSet a, PositionSet) m (Deeper (NValue' t f m (NValue t f m))) Source # 
Instance details

Defined in Nix.Convert

Methods

toValue :: (AttrSet a, PositionSet) -> m (Deeper (NValue' t f m (NValue t f m))) Source #

ToValue (AttrSet (Symbolic m), PositionSet) m (Symbolic m) Source # 
Instance details

Defined in Nix.Lint

Methods

toValue :: (AttrSet (Symbolic m), PositionSet) -> m (Symbolic m) Source #

(Convertible e t f m, FromValue a m (NValue t f m)) => FromValue (AttrSet a, PositionSet) m (Deeper (NValue' t f m (NValue t f m))) Source # 
Instance details

Defined in Nix.Convert

Methods

fromValue :: Deeper (NValue' t f m (NValue t f m)) -> m (AttrSet a, PositionSet) Source #

fromValueMay :: Deeper (NValue' t f m (NValue t f m)) -> m (Maybe (AttrSet a, PositionSet)) Source #

FromValue (AttrSet (Symbolic m), PositionSet) m (Symbolic m) Source # 
Instance details

Defined in Nix.Lint

Convertible e t f m => ToValue (AttrSet (NValue t f m), PositionSet) m (NValue' t f m (NValue t f m)) Source # 
Instance details

Defined in Nix.Convert

Methods

toValue :: (AttrSet (NValue t f m), PositionSet) -> m (NValue' t f m (NValue t f m)) Source #

Convertible e t f m => FromValue (AttrSet (NValue t f m), PositionSet) m (NValue' t f m (NValue t f m)) Source # 
Instance details

Defined in Nix.Convert

Methods

fromValue :: NValue' t f m (NValue t f m) -> m (AttrSet (NValue t f m), PositionSet) Source #

fromValueMay :: NValue' t f m (NValue t f m) -> m (Maybe (AttrSet (NValue t f m), PositionSet)) Source #

type Rep SourcePos 
Instance details

Defined in Text.Megaparsec.Pos

type Rep SourcePos = D1 ('MetaData "SourcePos" "Text.Megaparsec.Pos" "megaparsec-9.2.0-B64NrbHllKv8J1iwZ1DQOi" 'False) (C1 ('MetaCons "SourcePos" 'PrefixI 'True) (S1 ('MetaSel ('Just "sourceName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath) :*: (S1 ('MetaSel ('Just "sourceLine") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Pos) :*: S1 ('MetaSel ('Just "sourceColumn") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Pos))))

unPos :: Pos -> Int #

Extract Int from Pos.

Since: megaparsec-6.0.0

mkPos :: Int -> Pos #

Construction of Pos from Int. The function throws InvalidPosException when given a non-positive argument.

Since: megaparsec-6.0.0