curry-frontend-1.0.4: Compile the functional logic language Curry to several intermediate formats

Copyright(c) 1999 - 2003 Wolfgang Lux
2011 - 2015 Björn Peemöller
LicenseBSD-3-clause
Maintainerbjp@informatik.uni-kiel.de
Stabilityexperimental
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

Base.NestEnv

Description

The NestEnv environment type extends top-level environments to manage nested scopes. Local scopes allow only for a single, unambiguous definition.

As a matter of convenience, the module TopEnv is exported by the module NestEnv. Thus, only the latter needs to be imported.

Documentation

data NestEnv a Source #

Instances
Functor NestEnv Source # 
Instance details

Defined in Base.NestEnv

Methods

fmap :: (a -> b) -> NestEnv a -> NestEnv b Source #

(<$) :: a -> NestEnv b -> NestEnv a Source #

Show a => Show (NestEnv a) Source # 
Instance details

Defined in Base.NestEnv

bindNestEnv :: Ident -> a -> NestEnv a -> NestEnv a Source #

qualBindNestEnv :: QualIdent -> a -> NestEnv a -> NestEnv a Source #

lookupNestEnv :: Ident -> NestEnv a -> [a] Source #

qualLookupNestEnv :: QualIdent -> NestEnv a -> [a] Source #

rebindNestEnv :: Ident -> a -> NestEnv a -> NestEnv a Source #

qualRebindNestEnv :: QualIdent -> a -> NestEnv a -> NestEnv a Source #

elemNestEnv :: Ident -> NestEnv a -> Bool Source #

qualModifyNestEnv :: (a -> a) -> QualIdent -> NestEnv a -> NestEnv a Source #

modifyNestEnv :: (a -> a) -> Ident -> NestEnv a -> NestEnv a Source #

localNestEnv :: NestEnv a -> [(Ident, a)] Source #

qualInLocalNestEnv :: QualIdent -> NestEnv a -> Bool Source #