ADPfusion-0.6.0.0: Efficient, high-level dynamic programming.

Safe HaskellNone
LanguageHaskell2010

ADP.Fusion.PointL.SynVar.Indices

Contents

Description

Index movement for syntactic variables in linear PointL grammars.

Syntactic variables for PointL indices can be both, static and variable. Static is the default, whenever we have X -> X a where a is a character or similar. However, we can expect to see a as a string as well. Then, X on the r.h.s. is variable.

Synopsis

    type function for the type of the left position

    Inside

    Outside

    Complement. Note that Complement joins inside and outside syntactic

    AddIndexDense instances

    Inside

    Outside

    Complement

    Orphan instances

    AddIndexDenseContext ps elm x0 i0 cs c us (PointL O) is (PointL C) => AddIndexDense (ps :. Complement :: Type) elm (cs :. c) (us :. PointL O) (is :. PointL C) Source # 
    Instance details

    Methods

    addIndexDenseGo :: Monad m => Proxy (ps :. Complement) -> (cs :. c) -> LimitType (us :. PointL O) -> LimitType (is :. PointL C) -> (is :. PointL C) -> Stream m (SvState elm Z Z) -> Stream m (SvState elm (us :. PointL O) (is :. PointL C)) Source #

    AddIndexDenseContext ps elm x0 i0 cs c us (PointL I) is (PointL C) => AddIndexDense (ps :. Complement :: Type) elm (cs :. c) (us :. PointL I) (is :. PointL C) Source # 
    Instance details

    Methods

    addIndexDenseGo :: Monad m => Proxy (ps :. Complement) -> (cs :. c) -> LimitType (us :. PointL I) -> LimitType (is :. PointL C) -> (is :. PointL C) -> Stream m (SvState elm Z Z) -> Stream m (SvState elm (us :. PointL I) (is :. PointL C)) Source #

    (AddIndexDenseContext ps elm x0 i0 cs c us (PointL O) is (PointL O), MinSize c) => AddIndexDense (ps :. ORightOf d :: Type) elm (cs :. c) (us :. PointL O) (is :. PointL O) Source # 
    Instance details

    Methods

    addIndexDenseGo :: Monad m => Proxy (ps :. ORightOf d) -> (cs :. c) -> LimitType (us :. PointL O) -> LimitType (is :. PointL O) -> (is :. PointL O) -> Stream m (SvState elm Z Z) -> Stream m (SvState elm (us :. PointL O) (is :. PointL O)) Source #

    (AddIndexDenseContext ps elm x0 i0 cs c us (PointL O) is (PointL O), MinSize c) => AddIndexDense (ps :. OStatic d :: Type) elm (cs :. c) (us :. PointL O) (is :. PointL O) Source # 
    Instance details

    Methods

    addIndexDenseGo :: Monad m => Proxy (ps :. OStatic d) -> (cs :. c) -> LimitType (us :. PointL O) -> LimitType (is :. PointL O) -> (is :. PointL O) -> Stream m (SvState elm Z Z) -> Stream m (SvState elm (us :. PointL O) (is :. PointL O)) Source #

    (AddIndexDenseContext ps elm x0 i0 cs c us (PointL I) is (PointL I), MinSize c) => AddIndexDense (ps :. IVariable d :: Type) elm (cs :. c) (us :. PointL I) (is :. PointL I) Source # 
    Instance details

    Methods

    addIndexDenseGo :: Monad m => Proxy (ps :. IVariable d) -> (cs :. c) -> LimitType (us :. PointL I) -> LimitType (is :. PointL I) -> (is :. PointL I) -> Stream m (SvState elm Z Z) -> Stream m (SvState elm (us :. PointL I) (is :. PointL I)) Source #

    (AddIndexDenseContext ps elm x0 i0 cs c us (PointL I) is (PointL I), MinSize c) => AddIndexDense (ps :. IStatic d :: Type) elm (cs :. c) (us :. PointL I) (is :. PointL I) Source # 
    Instance details

    Methods

    addIndexDenseGo :: Monad m => Proxy (ps :. IStatic d) -> (cs :. c) -> LimitType (us :. PointL I) -> LimitType (is :. PointL I) -> (is :. PointL I) -> Stream m (SvState elm Z Z) -> Stream m (SvState elm (us :. PointL I) (is :. PointL I)) Source #