Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- chunk ::= {stat [';']} [laststat [';']]
- block ::= chunk
- stat ::= varlist1 '=' explist1 |
- functioncall |
- do block end |
- while exp do block end |
- repeat block until exp |
- if exp then block {elseif exp then block} [else block] end |
- for Name '=' exp ',' exp [',' exp] do block end |
- for namelist in explist1 do block end |
- function funcname funcbody |
- local function Name funcbody |
- local namelist ['=' explist1]
- laststat ::= return [explist1] | break
- funcname ::= Name {'.' Name} [':' Name]
- varlist1 ::= var {',' var}
- var ::= Name | prefixexp '[' exp ']' | prefixexp '.' Name
- namelist ::= Name {',' Name}
- explist1 ::= {exp ','} exp
- exp ::= nil | false | true | Number | String | '...' | function |
- prefixexp | tableconstructor | exp binop exp | unop exp
- prefixexp ::= var | functioncall | '(' exp ')'
- functioncall ::= prefixexp args | prefixexp ':' Name args
- args ::= '(' [explist1] ')' | tableconstructor | String
- function ::= function funcbody
- funcbody ::= '(' [parlist1] ')' block end
- parlist1 ::= namelist [',' '...'] | '...'
- tableconstructor ::= '{' [fieldlist] '}'
- fieldlist ::= field {fieldsep field} [fieldsep]
- field ::= '[' exp ']' '=' exp | Name '=' exp | exp
- fieldsep ::= ',' | ';'
- binop ::= '+' | '-' | '*' | '/' | '^' | '%' | '..' |
- '<' | '<=' | '>' | '>=' | '==' | '~=' |
- and | or
- unop ::= '-' | not | '#'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement