File: src/ast.ml (return to index)



Statistics:  
kind coverage
binding 0 / 0 (-%)
sequence 0 / 0 (-%)
for 0 / 0 (-%)
if/then 0 / 0 (-%)
try 0 / 0 (-%)
while 0 / 0 (-%)
match/function 0 / 0 (-%)
kind coverage
class expression 0 / 0 (-%)
class initializer 0 / 0 (-%)
class method 0 / 0 (-%)
class value 0 / 0 (-%)
toplevel expression 0 / 0 (-%)
lazy operator 0 / 0 (-%)



Source:

fold all unfold all
000001| (** Basic AST for Lua *)
000002|  
000003| type unop =
000004| | Not
000005| | Length
000006| | Uminus
000007|  
000008| type binop =
000009| | Eq | Lt | Gt | Ne | Le | Ge
000010| | Plus | Minus | Times | Div | Mod | Pow
000011| | Concat
000012|  
000013| type str =
000014| | Normal of string
000015| | Char of string
000016| | Long of string
000017|  
000018| type number =
000019| | Int of int
000020| | Hex of int
000021| | Float of float
000022|  
000023| type lit =
000024| | Nil
000025| | Bool of bool
000026| | String of str
000027| | Number of number
000028| | Table of exp list * (string * exp) list
000029| | Fun of string list * block (*fixme: pos*)
000030|  
000031| and lvalue =
000032| | Name of string
000033| | Index of exp * string
000034| | DynIndex of exp * exp
000035|  
000036| and exp =
000037| | Lit of lit
000038| | Lvalue of lvalue
000039| | Unop of unop * exp
000040| | Binop of exp * binop * exp
000041| | And of exp * exp
000042| | Or of exp * exp
000043| | Call of exp * exp list
000044| | Methcall of exp * string * exp list
000045| | Paren of exp
000046|  
000047| and stmt = { stmt_pos : Lexing.position;
000048|              stmt     : stmt_desc }
000049| and stmt_desc =
000050| | Break
000051| | If of exp * block * block
000052| | WhileDo of exp * block
000053| (*| For of string * exp * exp * block*)
000054| | Doend of block 
000055| | Assign of lvalue list * exp list
000056| | Local of string list * exp list
000057| | Callstmt of exp * exp list
000058| | Methcallstmt of exp * string * exp list
000059| | Return of exp list
000060|  
000061| and block = stmt list

Legend:
   some code - line containing no point
   some code - line containing only visited points
   some code - line containing only unvisited points
   some code - line containing both visited and unvisited points