traq
Safe HaskellSafe-Inferred
LanguageHaskell2010

Traq.Data.Context

Synopsis

Documentation

data Context a #

Instances

Instances details
Foldable Context # 
Instance details

Defined in Traq.Data.Context

Methods

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

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

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

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

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

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

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

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

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

toList :: Context a -> [a] #

null :: Context a -> Bool #

length :: Context a -> Int #

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

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

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

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

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

Traversable Context # 
Instance details

Defined in Traq.Data.Context

Methods

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

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

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

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

Functor Context # 
Instance details

Defined in Traq.Data.Context

Methods

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

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

Monoid (Context a) # 
Instance details

Defined in Traq.Data.Context

Methods

mempty :: Context a #

mappend :: Context a -> Context a -> Context a #

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

Semigroup (Context a) # 
Instance details

Defined in Traq.Data.Context

Methods

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

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

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

Generic (Context a) # 
Instance details

Defined in Traq.Data.Context

Associated Types

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

Methods

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

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

Read a => Read (Context a) # 
Instance details

Defined in Traq.Data.Context

Show a => Show (Context a) # 
Instance details

Defined in Traq.Data.Context

Methods

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

show :: Context a -> String #

showList :: [Context a] -> ShowS #

Eq a => Eq (Context a) # 
Instance details

Defined in Traq.Data.Context

Methods

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

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

HasProcCtx (ProcCtx sizeT) # 
Instance details

Defined in Traq.CQPL.Syntax

Methods

_procCtx :: (sizeT0 ~ SizeType (ProcCtx sizeT), precT ~ PrecType (ProcCtx sizeT)) => Lens' (ProcCtx sizeT) (ProcCtx sizeT0) #

HasDefault (Context a) # 
Instance details

Defined in Traq.Data.Context

Methods

default_ :: Context a #

HasFunInterpCtx (FunInterpCtx sizeT) # 
Instance details

Defined in Traq.ProtoLang.Eval

Methods

_funInterpCtx :: sizeT0 ~ SizeType (FunInterpCtx sizeT) => Lens' (FunInterpCtx sizeT) (FunInterpCtx sizeT0) #

HasProgramState (ProgramState sizeT) # 
Instance details

Defined in Traq.ProtoLang.Eval

Methods

_state :: sizeT0 ~ SizeType (ProgramState sizeT) => Lens' (ProgramState sizeT) (ProgramState sizeT0) #

HasTypingCtx (TypingCtx sizeT) # 
Instance details

Defined in Traq.ProtoLang.TypeCheck

Methods

_typingCtx :: sizeT0 ~ SizeType (TypingCtx sizeT) => Lens' (TypingCtx sizeT) (TypingCtx sizeT0) #

HasFunCtx (FunCtx ext) ext # 
Instance details

Defined in Traq.ProtoLang.Syntax

Methods

_funCtx :: Lens' (FunCtx ext) (FunCtx ext) #

type Rep (Context a) # 
Instance details

Defined in Traq.Data.Context

type Rep (Context a)
type PrecType (Context e) # 
Instance details

Defined in Traq.Prelude

type SizeType (Context e) # 
Instance details

Defined in Traq.Prelude

Lenses

at :: Ident -> SimpleGetter (Context a) (Maybe a) #

ins :: Ident -> ASetter' (Context a) a #

ix :: Ident -> Traversal' (Context a) a #

Get/Modify an existing binding.

Primary functions

null :: Context a -> Bool #

(\\) :: Context a -> Context a -> Context a #

trunc :: Ident -> Context a -> Context a #

truncate terms till k

merge :: Context a -> Context a -> Context a #

Secondary functions

fromList :: Foldable f => f (Ident, a) -> Context a #

fromListWith :: Foldable f => (a -> Ident) -> f a -> Context a #

singleton :: Ident -> a -> Context a #

toList :: Context a -> [(Ident, a)] #

keys :: Context a -> [Ident] #

elems :: Context a -> [a] #

toAscList :: Context a -> [(Ident, a)] #

Monadic functions

unsafeLookup :: MonadState (Context a) m => Ident -> m a #

unsafeLookupE :: MonadReader (Context a) m => Ident -> m a #

lookup :: (MonadError String m, MonadState (Context a) m) => Ident -> m a #

lookup' :: (MonadError String m, MonadReader (Context a) m) => Ident -> m a #

unsafePut :: MonadState (Context a) m => Ident -> a -> m () #

put :: (MonadError String m, MonadState (Context a) m) => Ident -> a -> m () #