about summary refs log tree commit diff
diff options
context:
space:
mode:
authorkennytm <kennytm@gmail.com>2017-10-15 14:21:52 +0800
committerGitHub <noreply@github.com>2017-10-15 14:21:52 +0800
commitb6f4cea79d392378e9b457a4dea6c28ed22ad160 (patch)
treede1967afb970b4fdbcbe268b3ff41e5bb63a549c
parent430ac4ba50991948357e86050bb83c9f6a780cb7 (diff)
parent8e6119f353ab424657080776243d6f9af4f7dfe8 (diff)
downloadrust-b6f4cea79d392378e9b457a4dea6c28ed22ad160.tar.gz
rust-b6f4cea79d392378e9b457a4dea6c28ed22ad160.zip
Rollup merge of #45250 - brauliobz:non-ascii-idents-details, r=steveklabnik
Moved details of unstable non-ascii identifiers from the Reference

Moved details of unstable non-ascii identifiers from the Reference to the Unstable book

r? @steveklabnik
-rw-r--r--src/doc/unstable-book/src/language-features/non-ascii-idents.md32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/doc/unstable-book/src/language-features/non-ascii-idents.md b/src/doc/unstable-book/src/language-features/non-ascii-idents.md
index d5600c58fd9..efb5495fe26 100644
--- a/src/doc/unstable-book/src/language-features/non-ascii-idents.md
+++ b/src/doc/unstable-book/src/language-features/non-ascii-idents.md
@@ -15,4 +15,34 @@ The `non_ascii_idents` feature adds support for non-ASCII identifiers.
 
 const ε: f64 = 0.00001f64;
 const Π: f64 = 3.14f64;
-```
\ No newline at end of file
+```
+
+## Changes to the language reference
+
+> **<sup>Lexer:<sup>**  
+> IDENTIFIER :  
+> &nbsp;&nbsp; &nbsp;&nbsp; XID_start XID_continue<sup>\*</sup>  
+> &nbsp;&nbsp; | `_` XID_continue<sup>+</sup>  
+
+An identifier is any nonempty Unicode string of the following form:
+
+Either
+
+   * The first character has property [`XID_start`]
+   * The remaining characters have property [`XID_continue`]
+
+Or
+
+   * The first character is `_`
+   * The identifier is more than one character, `_` alone is not an identifier
+   * The remaining characters have property [`XID_continue`]
+
+that does _not_ occur in the set of [strict keywords].
+
+> **Note**: [`XID_start`] and [`XID_continue`] as character properties cover the
+> character ranges used to form the more familiar C and Java language-family
+> identifiers.
+
+[`XID_start`]:  http://unicode.org/cldr/utility/list-unicodeset.jsp?a=%5B%3AXID_Start%3A%5D&abb=on&g=&i=
+[`XID_continue`]: http://unicode.org/cldr/utility/list-unicodeset.jsp?a=%5B%3AXID_Continue%3A%5D&abb=on&g=&i=
+[strict keywords]: ../reference/keywords.html#strict-keywords