aoc2019-0.1.0.0: Development environment for Advent of Code challenges

Safe HaskellNone
LanguageHaskell2010

AOC.Common.Intcode.Memory

Documentation

class Monad m => MonadMem m where Source #

Instances
(PrimMonad m, s ~ PrimState m) => MonadMem (ReaderT (MemRef s) m) Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

MonadMem m => MonadMem (ExceptT e m) Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

Monad m => MonadMem (StateT Memory m) Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

MonadMem m => MonadMem (Pipe i o u m) Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

Methods

mRead :: Pipe i o u m Int Source #

mCurr :: Pipe i o u m Natural Source #

mPeek :: Natural -> Pipe i o u m Int Source #

mSeek :: Natural -> Pipe i o u m () Source #

mWrite :: Natural -> Int -> Pipe i o u m () Source #

mShiftBase :: Int -> Pipe i o u m () Source #

mWithBase :: Int -> Pipe i o u m Int Source #

data Memory Source #

Constructors

Mem 

Fields

Instances
Eq Memory Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

Methods

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

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

Ord Memory Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

Show Memory Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

Generic Memory Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

Associated Types

type Rep Memory :: Type -> Type #

Methods

from :: Memory -> Rep Memory x #

to :: Rep Memory x -> Memory #

NFData Memory Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

Methods

rnf :: Memory -> () #

Monad m => MonadMem (StateT Memory m) Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

type Rep Memory Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

data MemRef s Source #

Constructors

MemRef 

Fields

Instances
(PrimMonad m, s ~ PrimState m) => MonadMem (ReaderT (MemRef s) m) Source # 
Instance details

Defined in AOC.Common.Intcode.Memory

initMemRef :: (PrimMonad m, s ~ PrimState m) => Memory -> m (MemRef s) Source #