ADA参考手册:词法元素、分隔符、定界符
标准参考手册翻译
词法元素、分隔符、定界符
一个程序文本由一个或多个编译单元文本组成。每个编译单元的文本由连续的分隔的词法元素组成。每个词法元素由连续的字符组成,可能是定界符、标识符、保留字、数值文字、字符文字、字符串或注释。一个程序的含义依赖于由特别的连续的词法元素组成的语句,注释除外。
一个编译单元文本被划分成多行。通常的,行尾符由实现预定义。然而,一个连续的一个或多个格式作用符不同于字符TAB(16#09#)标记至少一个行尾。
在一些情况下,相邻的词法元素之间需要明显的分隔符来分开。一个分隔符可以是一个空格、一个格式作用福、一个行尾,如下:
不在注释中,不在字符串文字中,不在字符文字中的空格是一个分隔符。
不在注释中的tab字符是一个分隔符。
行尾总是一个分隔符。
一个或多个分隔符可以存在于相邻的词法元素之间、每个编译单元的最前面或最后面。在一个标识符、保留字、或一个数值文字与其相邻的标识符、保留字、数值文字之间必须存在至少一个分隔符。
定界符可以是以下的单字符定界符:
& ‘ ( ) * + , - . / : ; < = > |
或以下由两个相邻的特殊字符组成的复合定界符:
=> … ** := /= >= <= << >> <>
不在复合定界符中,或者不是注释、字符串文字、字符文字或数值文字中的单个定界符是一个单独的定界符。
以下是关于复合定界符的名称:
复合定界符 | 名称 | 含义 |
=> | Arrow,箭头 | 指派 |
… | double dot,双点 | 从…到 |
** | Double star,exponentiate,双星,取幂 | 取幂 |
:= | assignment (pronounced: “becomes”),赋值 | 赋值 |
/= | inequality (pronounced: “not equal”),不等于 | 不等于 |
>= | Greater than or equal,大于等于 | 大于等于 |
<= | Less than or equal,小于等于 | 小于等于 |
<< | Left label bracket,左标签括号 | 左标签括号 |
>> | Right label bracket,右标签符号 | 右标签符号 |
<> | Box,盒子 | 不定范围的 |