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

Nix.Scope

Documentation

newtype Scope a Source #

Constructors

Scope (AttrSet a) 

Instances

Instances details
Functor Scope Source # 
Instance details

Defined in Nix.Scope

Methods

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

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

Foldable Scope Source # 
Instance details

Defined in Nix.Scope

Methods

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

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

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

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

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

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

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

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

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

toList :: Scope a -> [a] #

null :: Scope a -> Bool #

length :: Scope a -> Int #

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

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

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

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

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

Traversable Scope Source # 
Instance details

Defined in Nix.Scope

Methods

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

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

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

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

Eq a => Eq (Scope a) Source # 
Instance details

Defined in Nix.Scope

Methods

(==) :: Scope a -> Scope a -> Bool #

(/=) :: Scope a -> Scope a -> Bool #

Ord a => Ord (Scope a) Source # 
Instance details

Defined in Nix.Scope

Methods

compare :: Scope a -> Scope a -> Ordering #

(<) :: Scope a -> Scope a -> Bool #

(<=) :: Scope a -> Scope a -> Bool #

(>) :: Scope a -> Scope a -> Bool #

(>=) :: Scope a -> Scope a -> Bool #

max :: Scope a -> Scope a -> Scope a #

min :: Scope a -> Scope a -> Scope a #

Read a => Read (Scope a) Source # 
Instance details

Defined in Nix.Scope

Show (Scope a) Source # 
Instance details

Defined in Nix.Scope

Methods

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

show :: Scope a -> String #

showList :: [Scope a] -> ShowS #

Generic (Scope a) Source # 
Instance details

Defined in Nix.Scope

Associated Types

type Rep (Scope a) :: Type -> Type #

Methods

from :: Scope a -> Rep (Scope a) x #

to :: Rep (Scope a) x -> Scope a #

Semigroup (Scope a) Source # 
Instance details

Defined in Nix.Scope

Methods

(<>) :: Scope a -> Scope a -> Scope a #

sconcat :: NonEmpty (Scope a) -> Scope a #

stimes :: Integral b => b -> Scope a -> Scope a #

Monoid (Scope a) Source # 
Instance details

Defined in Nix.Scope

Methods

mempty :: Scope a #

mappend :: Scope a -> Scope a -> Scope a #

mconcat :: [Scope a] -> Scope a #

Hashable a => Hashable (Scope a) Source # 
Instance details

Defined in Nix.Scope

Methods

hashWithSalt :: Int -> Scope a -> Int #

hash :: Scope a -> Int #

NFData a => NFData (Scope a) Source # 
Instance details

Defined in Nix.Scope

Methods

rnf :: Scope a -> () #

One (Scope a) Source # 
Instance details

Defined in Nix.Scope

Associated Types

type OneItem (Scope a) #

Methods

one :: OneItem (Scope a) -> Scope a #

type Rep (Scope a) Source # 
Instance details

Defined in Nix.Scope

type Rep (Scope a) = D1 ('MetaData "Scope" "Nix.Scope" "hnix-0.16.0-8yNt853wvoc5yRPRKlu02G" 'True) (C1 ('MetaCons "Scope" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (AttrSet a))))
type OneItem (Scope a) Source # 
Instance details

Defined in Nix.Scope

data Scopes m a Source #

Constructors

Scopes 

Fields

Instances

Instances details
Show (Scopes m a) Source # 
Instance details

Defined in Nix.Scope

Methods

showsPrec :: Int -> Scopes m a -> ShowS #

show :: Scopes m a -> String #

showList :: [Scopes m a] -> ShowS #

Semigroup (Scopes m a) Source # 
Instance details

Defined in Nix.Scope

Methods

(<>) :: Scopes m a -> Scopes m a -> Scopes m a #

sconcat :: NonEmpty (Scopes m a) -> Scopes m a #

stimes :: Integral b => b -> Scopes m a -> Scopes m a #

Monoid (Scopes m a) Source # 
Instance details

Defined in Nix.Scope

Methods

mempty :: Scopes m a #

mappend :: Scopes m a -> Scopes m a -> Scopes m a #

mconcat :: [Scopes m a] -> Scopes m a #

Has (Context m t) (Scopes m t) Source # 
Instance details

Defined in Nix.Context

Methods

hasLens :: Lens' (Context m t) (Scopes m t) Source #

class Scoped a m | m -> a where Source #

Methods

askScopes :: m (Scopes m a) Source #

clearScopes :: m r -> m r Source #

pushScopes :: Scopes m a -> m r -> m r Source #

lookupVar :: VarName -> m (Maybe a) Source #

Instances

Instances details
MonadReader (Context m (StdValue m)) m => Scoped (StdValue m) m Source # 
Instance details

Defined in Nix.Standard

Methods

askScopes :: m (Scopes m (StdValue m)) Source #

clearScopes :: m r -> m r Source #

pushScopes :: Scopes m (StdValue m) -> m r -> m r Source #

lookupVar :: VarName -> m (Maybe (StdValue m)) Source #

Scoped (Symbolic (Lint s)) (Lint s) Source # 
Instance details

Defined in Nix.Lint

Methods

askScopes :: Lint s (Scopes (Lint s) (Symbolic (Lint s))) Source #

clearScopes :: Lint s r -> Lint s r Source #

pushScopes :: Scopes (Lint s) (Symbolic (Lint s)) -> Lint s r -> Lint s r Source #

lookupVar :: VarName -> Lint s (Maybe (Symbolic (Lint s))) Source #

askScopesReader :: forall m a e. (MonadReader e m, Has e (Scopes m a)) => m (Scopes m a) Source #

clearScopesReader :: forall m a e r. (MonadReader e m, Has e (Scopes m a)) => m r -> m r Source #

pushScope :: Scoped a m => Scope a -> m r -> m r Source #

pushWeakScope :: (Functor m, Scoped a m) => m (Scope a) -> m r -> m r Source #

pushScopesReader :: (MonadReader e m, Has e (Scopes m a)) => Scopes m a -> m r -> m r Source #

lookupVarReader :: forall m a e. (MonadReader e m, Has e (Scopes m a)) => VarName -> m (Maybe a) Source #

withScopes :: Scoped a m => Scopes m a -> m r -> m r Source #