language-lua-0.11.0.1: Lua parser and pretty-printer

Safe HaskellSafe
LanguageHaskell2010

Language.Lua.Annotated.Syntax

Description

Lua 5.3 syntax tree, as specified in http://www.lua.org/manual/5.3/manual.html#9. Annotation implementation is inspired by haskell-src-exts.

Synopsis

Documentation

class Functor ast => Annotated ast where Source #

Methods

ann :: ast l -> l Source #

Retrieve the annotation of an AST node.

amap :: (l -> l) -> ast l -> ast l Source #

Change the annotation of an AST node. Note that only the annotation of the node itself is affected, and not the annotations of any child nodes. if all nodes in the AST tree are to be affected, use fmap.

Instances
Annotated FunArg Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunArg l -> l Source #

amap :: (l -> l) -> FunArg l -> FunArg l Source #

Annotated FunCall Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunCall l -> l Source #

amap :: (l -> l) -> FunCall l -> FunCall l Source #

Annotated FunBody Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunBody l -> l Source #

amap :: (l -> l) -> FunBody l -> FunBody l Source #

Annotated FunDef Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunDef l -> l Source #

amap :: (l -> l) -> FunDef l -> FunDef l Source #

Annotated FunName Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunName l -> l Source #

amap :: (l -> l) -> FunName l -> FunName l Source #

Annotated Block Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Block l -> l Source #

amap :: (l -> l) -> Block l -> Block l Source #

Annotated TableField Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: TableField l -> l Source #

amap :: (l -> l) -> TableField l -> TableField l Source #

Annotated Table Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Table l -> l Source #

amap :: (l -> l) -> Table l -> Table l Source #

Annotated PrefixExp Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: PrefixExp l -> l Source #

amap :: (l -> l) -> PrefixExp l -> PrefixExp l Source #

Annotated Unop Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Unop l -> l Source #

amap :: (l -> l) -> Unop l -> Unop l Source #

Annotated Binop Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Binop l -> l Source #

amap :: (l -> l) -> Binop l -> Binop l Source #

Annotated Var Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Var l -> l Source #

amap :: (l -> l) -> Var l -> Var l Source #

Annotated Exp Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Exp l -> l Source #

amap :: (l -> l) -> Exp l -> Exp l Source #

Annotated Stat Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Stat l -> l Source #

amap :: (l -> l) -> Stat l -> Stat l Source #

Annotated Name Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Name l -> l Source #

amap :: (l -> l) -> Name l -> Name l Source #

data FunArg a Source #

Constructors

Args a [Exp a]

list of args

TableArg a (Table a)

table constructor

StringArg a Text

string

Instances
Functor FunArg Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated FunArg Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunArg l -> l Source #

amap :: (l -> l) -> FunArg l -> FunArg l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (FunArg a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunArg a -> c (FunArg a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (FunArg a) #

toConstr :: FunArg a -> Constr #

dataTypeOf :: FunArg a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (FunArg a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (FunArg a)) #

gmapT :: (forall b. Data b => b -> b) -> FunArg a -> FunArg a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunArg a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunArg a -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunArg a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunArg a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunArg a -> m (FunArg a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunArg a -> m (FunArg a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunArg a -> m (FunArg a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: FunArg a -> String #

showList :: [FunArg a] -> ShowS #

Generic (FunArg a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: FunArg a -> () #

type Rep (FunArg a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data FunCall a Source #

Constructors

NormalFunCall a (PrefixExp a) (FunArg a)

prefixexp ( funarg )

MethodCall a (PrefixExp a) (Name a) (FunArg a)

prefixexp : name ( funarg )

Instances
Functor FunCall Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated FunCall Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunCall l -> l Source #

amap :: (l -> l) -> FunCall l -> FunCall l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (FunCall a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunCall a -> c (FunCall a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (FunCall a) #

toConstr :: FunCall a -> Constr #

dataTypeOf :: FunCall a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (FunCall a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (FunCall a)) #

gmapT :: (forall b. Data b => b -> b) -> FunCall a -> FunCall a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunCall a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunCall a -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunCall a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunCall a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunCall a -> m (FunCall a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunCall a -> m (FunCall a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunCall a -> m (FunCall a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: FunCall a -> String #

showList :: [FunCall a] -> ShowS #

Generic (FunCall a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: FunCall a -> () #

type Rep (FunCall a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data FunBody a Source #

Constructors

FunBody a [Name a] (Maybe a) (Block a)

(args, vararg, block)

Instances
Functor FunBody Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated FunBody Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunBody l -> l Source #

amap :: (l -> l) -> FunBody l -> FunBody l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (FunBody a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunBody a -> c (FunBody a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (FunBody a) #

toConstr :: FunBody a -> Constr #

dataTypeOf :: FunBody a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (FunBody a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (FunBody a)) #

gmapT :: (forall b. Data b => b -> b) -> FunBody a -> FunBody a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunBody a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunBody a -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunBody a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunBody a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunBody a -> m (FunBody a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunBody a -> m (FunBody a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunBody a -> m (FunBody a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: FunBody a -> String #

showList :: [FunBody a] -> ShowS #

Generic (FunBody a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: FunBody a -> () #

type Rep (FunBody a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data FunDef a Source #

Constructors

FunDef a (FunBody a) 
Instances
Functor FunDef Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated FunDef Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunDef l -> l Source #

amap :: (l -> l) -> FunDef l -> FunDef l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (FunDef a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunDef a -> c (FunDef a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (FunDef a) #

toConstr :: FunDef a -> Constr #

dataTypeOf :: FunDef a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (FunDef a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (FunDef a)) #

gmapT :: (forall b. Data b => b -> b) -> FunDef a -> FunDef a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunDef a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunDef a -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunDef a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunDef a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunDef a -> m (FunDef a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunDef a -> m (FunDef a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunDef a -> m (FunDef a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: FunDef a -> String #

showList :: [FunDef a] -> ShowS #

Generic (FunDef a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: FunDef a -> () #

type Rep (FunDef a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

type Rep (FunDef a) = D1 (MetaData "FunDef" "Language.Lua.Annotated.Syntax" "language-lua-0.11.0.1-LGCxWe6LSma1uJYm3xYR9F" False) (C1 (MetaCons "FunDef" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (FunBody a))))

data FunName a Source #

Constructors

FunName a (Name a) [Name a] (Maybe (Name a)) 
Instances
Functor FunName Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated FunName Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: FunName l -> l Source #

amap :: (l -> l) -> FunName l -> FunName l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (FunName a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FunName a -> c (FunName a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (FunName a) #

toConstr :: FunName a -> Constr #

dataTypeOf :: FunName a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (FunName a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (FunName a)) #

gmapT :: (forall b. Data b => b -> b) -> FunName a -> FunName a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FunName a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FunName a -> r #

gmapQ :: (forall d. Data d => d -> u) -> FunName a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> FunName a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> FunName a -> m (FunName a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FunName a -> m (FunName a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FunName a -> m (FunName a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: FunName a -> String #

showList :: [FunName a] -> ShowS #

Generic (FunName a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: FunName a -> () #

type Rep (FunName a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data Block a Source #

A block is list of statements with optional return statement.

Constructors

Block a [Stat a] (Maybe [Exp a]) 
Instances
Functor Block Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Block Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Block l -> l Source #

amap :: (l -> l) -> Block l -> Block l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Block a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Block a -> c (Block a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Block a) #

toConstr :: Block a -> Constr #

dataTypeOf :: Block a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Block a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Block a)) #

gmapT :: (forall b. Data b => b -> b) -> Block a -> Block a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Block a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Block a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Block a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Block a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Block a -> m (Block a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Block a -> m (Block a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Block a -> m (Block a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Block a -> String #

showList :: [Block a] -> ShowS #

Generic (Block a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Block a -> () #

type Rep (Block a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data TableField a Source #

Constructors

ExpField a (Exp a) (Exp a)

[exp] = exp

NamedField a (Name a) (Exp a)

name = exp

Field a (Exp a) 
Instances
Functor TableField Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated TableField Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: TableField l -> l Source #

amap :: (l -> l) -> TableField l -> TableField l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (TableField a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TableField a -> c (TableField a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (TableField a) #

toConstr :: TableField a -> Constr #

dataTypeOf :: TableField a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (TableField a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (TableField a)) #

gmapT :: (forall b. Data b => b -> b) -> TableField a -> TableField a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TableField a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TableField a -> r #

gmapQ :: (forall d. Data d => d -> u) -> TableField a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> TableField a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> TableField a -> m (TableField a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TableField a -> m (TableField a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TableField a -> m (TableField a) #

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

Defined in Language.Lua.Annotated.Syntax

Generic (TableField a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: TableField a -> () #

type Rep (TableField a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data Table a Source #

Constructors

Table a [TableField a]

list of table fields

Instances
Functor Table Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Table Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Table l -> l Source #

amap :: (l -> l) -> Table l -> Table l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Table a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Table a -> c (Table a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Table a) #

toConstr :: Table a -> Constr #

dataTypeOf :: Table a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Table a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Table a)) #

gmapT :: (forall b. Data b => b -> b) -> Table a -> Table a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Table a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Table a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Table a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Table a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Table a -> m (Table a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Table a -> m (Table a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Table a -> m (Table a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Table a -> String #

showList :: [Table a] -> ShowS #

Generic (Table a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Table a -> () #

type Rep (Table a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

type Rep (Table a) = D1 (MetaData "Table" "Language.Lua.Annotated.Syntax" "language-lua-0.11.0.1-LGCxWe6LSma1uJYm3xYR9F" False) (C1 (MetaCons "Table" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [TableField a])))

data PrefixExp a Source #

Constructors

PEVar a (Var a) 
PEFunCall a (FunCall a) 
Paren a (Exp a) 
Instances
Functor PrefixExp Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated PrefixExp Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: PrefixExp l -> l Source #

amap :: (l -> l) -> PrefixExp l -> PrefixExp l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (PrefixExp a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PrefixExp a -> c (PrefixExp a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (PrefixExp a) #

toConstr :: PrefixExp a -> Constr #

dataTypeOf :: PrefixExp a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (PrefixExp a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (PrefixExp a)) #

gmapT :: (forall b. Data b => b -> b) -> PrefixExp a -> PrefixExp a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PrefixExp a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PrefixExp a -> r #

gmapQ :: (forall d. Data d => d -> u) -> PrefixExp a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> PrefixExp a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> PrefixExp a -> m (PrefixExp a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PrefixExp a -> m (PrefixExp a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PrefixExp a -> m (PrefixExp a) #

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

Defined in Language.Lua.Annotated.Syntax

Generic (PrefixExp a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: PrefixExp a -> () #

type Rep (PrefixExp a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data Unop a Source #

Constructors

Neg a 
Not a 
Len a 
Complement a 
Instances
Functor Unop Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Unop Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Unop l -> l Source #

amap :: (l -> l) -> Unop l -> Unop l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Unop a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Unop a -> c (Unop a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Unop a) #

toConstr :: Unop a -> Constr #

dataTypeOf :: Unop a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Unop a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Unop a)) #

gmapT :: (forall b. Data b => b -> b) -> Unop a -> Unop a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Unop a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Unop a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Unop a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Unop a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Unop a -> m (Unop a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Unop a -> m (Unop a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Unop a -> m (Unop a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Unop a -> String #

showList :: [Unop a] -> ShowS #

Generic (Unop a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Unop a -> () #

type Rep (Unop a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data Binop a Source #

Constructors

Add a 
Sub a 
Mul a 
Div a 
Exp a 
Mod a 
Concat a 
LT a 
LTE a 
GT a 
GTE a 
EQ a 
NEQ a 
And a 
Or a 
IDiv a 
ShiftL a 
ShiftR a 
BAnd a 
BOr a 
BXor a 
Instances
Functor Binop Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Binop Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Binop l -> l Source #

amap :: (l -> l) -> Binop l -> Binop l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Binop a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Binop a -> c (Binop a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Binop a) #

toConstr :: Binop a -> Constr #

dataTypeOf :: Binop a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Binop a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Binop a)) #

gmapT :: (forall b. Data b => b -> b) -> Binop a -> Binop a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Binop a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Binop a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Binop a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Binop a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Binop a -> m (Binop a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Binop a -> m (Binop a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Binop a -> m (Binop a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Binop a -> String #

showList :: [Binop a] -> ShowS #

Generic (Binop a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Binop a -> () #

type Rep (Binop a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

type Rep (Binop a) = D1 (MetaData "Binop" "Language.Lua.Annotated.Syntax" "language-lua-0.11.0.1-LGCxWe6LSma1uJYm3xYR9F" False) ((((C1 (MetaCons "Add" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "Sub" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))) :+: (C1 (MetaCons "Mul" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: (C1 (MetaCons "Div" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "Exp" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))))) :+: ((C1 (MetaCons "Mod" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "Concat" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))) :+: (C1 (MetaCons "LT" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: (C1 (MetaCons "LTE" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "GT" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))))) :+: (((C1 (MetaCons "GTE" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "EQ" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))) :+: (C1 (MetaCons "NEQ" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: (C1 (MetaCons "And" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "Or" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))))) :+: ((C1 (MetaCons "IDiv" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: (C1 (MetaCons "ShiftL" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "ShiftR" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))) :+: (C1 (MetaCons "BAnd" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: (C1 (MetaCons "BOr" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "BXor" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))))))

data Var a Source #

Constructors

VarName a (Name a)

variable

Select a (PrefixExp a) (Exp a)

table[exp]

SelectName a (PrefixExp a) (Name a)

table.variable

Instances
Functor Var Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Var Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Var l -> l Source #

amap :: (l -> l) -> Var l -> Var l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Var a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Var a -> c (Var a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Var a) #

toConstr :: Var a -> Constr #

dataTypeOf :: Var a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Var a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Var a)) #

gmapT :: (forall b. Data b => b -> b) -> Var a -> Var a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Var a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Var a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Var a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Var a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Var a -> m (Var a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Var a -> m (Var a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Var a -> m (Var a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Var a -> String #

showList :: [Var a] -> ShowS #

Generic (Var a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Var a -> () #

type Rep (Var a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

data Exp a Source #

Constructors

Nil a 
Bool a Bool 
Number a NumberType Text 
String a Text 
Vararg a

...

EFunDef a (FunDef a)

function (..) .. end

PrefixExp a (PrefixExp a) 
TableConst a (Table a)

table constructor

Binop a (Binop a) (Exp a) (Exp a)

binary operators, + - * ^ % .. <= >= == ~= and or

Unop a (Unop a) (Exp a)

unary operators, - not #

Instances
Functor Exp Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Exp Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Exp l -> l Source #

amap :: (l -> l) -> Exp l -> Exp l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Exp a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Exp a -> c (Exp a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Exp a) #

toConstr :: Exp a -> Constr #

dataTypeOf :: Exp a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Exp a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Exp a)) #

gmapT :: (forall b. Data b => b -> b) -> Exp a -> Exp a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Exp a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Exp a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Exp a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Exp a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Exp a -> m (Exp a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Exp a -> m (Exp a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Exp a -> m (Exp a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Exp a -> String #

showList :: [Exp a] -> ShowS #

Generic (Exp a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Exp a -> () #

type Rep (Exp a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

type Rep (Exp a) = D1 (MetaData "Exp" "Language.Lua.Annotated.Syntax" "language-lua-0.11.0.1-LGCxWe6LSma1uJYm3xYR9F" False) (((C1 (MetaCons "Nil" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "Bool" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Bool))) :+: (C1 (MetaCons "Number" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 NumberType) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))) :+: (C1 (MetaCons "String" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)) :+: C1 (MetaCons "Vararg" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))))) :+: ((C1 (MetaCons "EFunDef" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (FunDef a))) :+: C1 (MetaCons "PrefixExp" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (PrefixExp a)))) :+: (C1 (MetaCons "TableConst" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Table a))) :+: (C1 (MetaCons "Binop" PrefixI False) ((S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Binop a))) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp a)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp a)))) :+: C1 (MetaCons "Unop" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Unop a)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp a))))))))

data Stat a Source #

Constructors

Assign a [Var a] [Exp a]

var1, var2 .. = exp1, exp2 ..

FunCall a (FunCall a)

function call

Label a (Name a)

label for goto

Break a

break

Goto a (Name a)

goto label

Do a (Block a)

do .. end

While a (Exp a) (Block a)

while .. do .. end

Repeat a (Block a) (Exp a)

repeat .. until ..

If a [(Exp a, Block a)] (Maybe (Block a))

if .. then .. [elseif ..] [else ..] end

ForRange a (Name a) (Exp a) (Exp a) (Maybe (Exp a)) (Block a)

for x=start, end [, step] do .. end

ForIn a [Name a] [Exp a] (Block a)

for x in .. do .. end

FunAssign a (FunName a) (FunBody a)

function <var> (..) .. end

LocalFunAssign a (Name a) (FunBody a)

local function <var> (..) .. end

LocalAssign a [Name a] (Maybe [Exp a])

local var1, var2 .. = exp1, exp2 ..

EmptyStat a

;

Instances
Functor Stat Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Stat Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Stat l -> l Source #

amap :: (l -> l) -> Stat l -> Stat l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Stat a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Stat a -> c (Stat a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Stat a) #

toConstr :: Stat a -> Constr #

dataTypeOf :: Stat a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Stat a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Stat a)) #

gmapT :: (forall b. Data b => b -> b) -> Stat a -> Stat a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Stat a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Stat a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Stat a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Stat a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Stat a -> m (Stat a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Stat a -> m (Stat a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Stat a -> m (Stat a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Stat a -> String #

showList :: [Stat a] -> ShowS #

Generic (Stat a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Stat a -> () #

type Rep (Stat a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

type Rep (Stat a) = D1 (MetaData "Stat" "Language.Lua.Annotated.Syntax" "language-lua-0.11.0.1-LGCxWe6LSma1uJYm3xYR9F" False) (((C1 (MetaCons "Assign" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Var a]) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Exp a]))) :+: (C1 (MetaCons "FunCall" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (FunCall a))) :+: C1 (MetaCons "Label" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Name a))))) :+: ((C1 (MetaCons "Break" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)) :+: C1 (MetaCons "Goto" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Name a)))) :+: (C1 (MetaCons "Do" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Block a))) :+: C1 (MetaCons "While" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp a)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Block a))))))) :+: (((C1 (MetaCons "Repeat" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Block a)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp a)))) :+: C1 (MetaCons "If" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [(Exp a, Block a)]) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Block a)))))) :+: (C1 (MetaCons "ForRange" PrefixI False) ((S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Name a)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp a)))) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Exp a)) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe (Exp a))) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Block a))))) :+: C1 (MetaCons "ForIn" PrefixI False) ((S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Name a])) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Exp a]) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Block a)))))) :+: ((C1 (MetaCons "FunAssign" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (FunName a)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (FunBody a)))) :+: C1 (MetaCons "LocalFunAssign" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Name a)) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (FunBody a))))) :+: (C1 (MetaCons "LocalAssign" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 [Name a]) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Maybe [Exp a])))) :+: C1 (MetaCons "EmptyStat" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a))))))

data Name a Source #

Constructors

Name a Text 
Instances
Functor Name Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Annotated Name Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

ann :: Name l -> l Source #

amap :: (l -> l) -> Name l -> Name l Source #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

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

Data a => Data (Name a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Name a -> c (Name a) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Name a) #

toConstr :: Name a -> Constr #

dataTypeOf :: Name a -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Name a)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Name a)) #

gmapT :: (forall b. Data b => b -> b) -> Name a -> Name a #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Name a -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Name a -> r #

gmapQ :: (forall d. Data d => d -> u) -> Name a -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Name a -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Name a -> m (Name a) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Name a -> m (Name a) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Name a -> m (Name a) #

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

Defined in Language.Lua.Annotated.Syntax

Methods

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

show :: Name a -> String #

showList :: [Name a] -> ShowS #

Generic (Name a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

Associated Types

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

Methods

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

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

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

Defined in Language.Lua.Annotated.Syntax

Methods

rnf :: Name a -> () #

type Rep (Name a) Source # 
Instance details

Defined in Language.Lua.Annotated.Syntax

type Rep (Name a) = D1 (MetaData "Name" "Language.Lua.Annotated.Syntax" "language-lua-0.11.0.1-LGCxWe6LSma1uJYm3xYR9F" False) (C1 (MetaCons "Name" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a) :*: S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

data NumberType Source #

Constructors

IntNum 
FloatNum 
Instances
Eq NumberType Source # 
Instance details

Defined in Language.Lua.Utils

Data NumberType Source # 
Instance details

Defined in Language.Lua.Utils

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NumberType -> c NumberType #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NumberType #

toConstr :: NumberType -> Constr #

dataTypeOf :: NumberType -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NumberType) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NumberType) #

gmapT :: (forall b. Data b => b -> b) -> NumberType -> NumberType #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NumberType -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NumberType -> r #

gmapQ :: (forall d. Data d => d -> u) -> NumberType -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> NumberType -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> NumberType -> m NumberType #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NumberType -> m NumberType #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NumberType -> m NumberType #

Show NumberType Source # 
Instance details

Defined in Language.Lua.Utils

Generic NumberType Source # 
Instance details

Defined in Language.Lua.Utils

Associated Types

type Rep NumberType :: Type -> Type #

NFData NumberType Source # 
Instance details

Defined in Language.Lua.Utils

Methods

rnf :: NumberType -> () #

type Rep NumberType Source # 
Instance details

Defined in Language.Lua.Utils

type Rep NumberType = D1 (MetaData "NumberType" "Language.Lua.Utils" "language-lua-0.11.0.1-LGCxWe6LSma1uJYm3xYR9F" False) (C1 (MetaCons "IntNum" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "FloatNum" PrefixI False) (U1 :: Type -> Type))