lua BNF
来源:互联网 发布:linux设备驱动 编辑:程序博客网 时间:2024/05/16 09:21
Here is the complete syntax of Lua in extended BNF. (It does not describe operator precedences.)
chunk ::= {stat [`;´]} [laststat [`;´]]block ::= chunkstat ::= 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] | breakfuncname ::= Name {`.´ Name} [`:´ Name]varlist1 ::= var {`,´ var}var ::= Name | prefixexp `[´ exp `]´ | prefixexp `.´ Name namelist ::= Name {`,´ Name}explist1 ::= {exp `,´} expexp ::= 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 funcbodyfuncbody ::= `(´ [parlist1] `)´ block endparlist1 ::= namelist [`,´ `...´] | `...´tableconstructor ::= `{´ [fieldlist] `}´fieldlist ::= field {fieldsep field} [fieldsep]field ::= `[´ exp `]´ `=´ exp | Name `=´ exp | expfieldsep ::= `,´ | `;´binop ::= `+´ | `-´ | `*´ | `/´ | `^´ | `%´ | `..´ | `<´ | `<=´ | `>´ | `>=´ | `==´ | `~=´ | and | orunop ::= `-´ | not | `#´
- lua BNF
- bnf
- BNF
- BNF(1)--Algol60 BNF
- BNF范式
- BNF范式
- BNF范式
- BNF范式
- BNF 规则
- BNF 介绍
- BNF学习
- 什么是BNF EBNF 巴科斯范式及其扩展 BNF & Augmented BNF
- What is BNF notation?
- 什么是BNF范式
- HQL BNF指南
- BNF与ABNF
- BNF 巴科斯范式
- Java语言标准BNF
- 职业规划是浪费时间?[
- 脚本语言
- lambda --- 【sjjf】咸蛋村之每周例课
- s3c2410 RTC驱动框架linux内核源码分析
- calc (antlr版)
- lua BNF
- Evolve 进化
- HP大中华区总裁孙振耀撰文谈退休并畅谈人生
- 编辑的状态
- 隐式网络
- 24 Warning Signs You Cannot Afford To Ignore
- 信产部:手机单向收费不到时候
- 我们最缺乏却最不可或缺的能力——独立思考
- [推荐学习]什么是IOC,什么是容器,什么是服务组件,它们和普通用户类的区别