在编程文档中,双冒号后面跟一个等号(:: =)是什么意思?

时间:2012-02-08 15:15:59

标签: language-agnostic symbols

::=在编程文档中的含义是什么?
例如在Lua documentation:或Python documentation

4 个答案:

答案 0 :(得分:41)

它在Backus–Naur Form

中表示'符号派生规则'

意思是:

<symbol> ::= __expression__ 

非终结<symbol>__expression__

组成(定义为,由其衍生而来)

它用于描述语言语法。

请注意,这两个示例都在Extended Backus–Naur Form中,但使用传统的BNF符号表达式分隔符(::=)。

答案 1 :(得分:12)

这是描述语言的Backus-Naur Form(BNF)符号。在此上下文中::=表示定义为

例如,在您引用的Python语言文档中,标识符被定义为字母或下划线,后跟字母,数字或下划线。然后用符号来描述字母和数字的定义,等等。

答案 2 :(得分:4)

正如其他人已经说过的那样,它是BNF表示法的一部分。维基百科有explanation and some examples,我在此不再赘述。

::=符号本身的历史和演变在The History of the ALGOL Effort(p29以后)中进行了解释。

答案 3 :(得分:3)

给定的元素语法。例如:

identifier ::=  (letter|"_") (letter | digit | "_")*

表示所有标识符必须符合给定的语法规则。