mirror of
https://github.com/golang/go
synced 2024-11-24 23:27:57 -07:00
autogenerate the table of contents
R=rsc DELTA=149 (1 added, 145 deleted, 3 changed) OCL=25231 CL=25234
This commit is contained in:
parent
4501d348e8
commit
fd1f3830c1
148
doc/go_spec.html
148
doc/go_spec.html
@ -1,13 +1,5 @@
|
|||||||
|
|
||||||
|
|
||||||
This document is a semi-formal specification of the Go systems
|
|
||||||
programming language.
|
|
||||||
<p>
|
|
||||||
<font color=red>
|
|
||||||
This document is not ready for external review, it is under active development.
|
|
||||||
Any part may change substantially as design progresses.
|
|
||||||
</font>
|
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Biggest open issues:
|
Biggest open issues:
|
||||||
[ ] General iterators
|
[ ] General iterators
|
||||||
@ -143,143 +135,6 @@ Timeline (9/5/08):
|
|||||||
- Jan 1, 2009: enough support to write interesting programs
|
- Jan 1, 2009: enough support to write interesting programs
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
||||||
<h2>Contents</h2>
|
|
||||||
<p>
|
|
||||||
TODO: This should be autogenerated but that will take work to make h3s appear in this list
|
|
||||||
</p>
|
|
||||||
<ul>
|
|
||||||
<li>Introduction
|
|
||||||
|
|
||||||
<li>Notation
|
|
||||||
|
|
||||||
<li>Source code representation
|
|
||||||
<ul>
|
|
||||||
<li>Characters
|
|
||||||
<li>Letters and digits
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Vocabulary
|
|
||||||
<ul>
|
|
||||||
<li>Identifiers
|
|
||||||
<li>Numeric literals
|
|
||||||
<li>Character and string literals
|
|
||||||
<li>Operators and delimitors
|
|
||||||
<li>Reserved words
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Declarations and scope rules
|
|
||||||
<ul>
|
|
||||||
<li>Predeclared identifiers
|
|
||||||
<li>Exported identifiers
|
|
||||||
<li>Const declarations
|
|
||||||
<ul>
|
|
||||||
<li>Iota
|
|
||||||
</ul>
|
|
||||||
<li>Type declarations
|
|
||||||
<li>Variable declarations
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Types
|
|
||||||
<ul>
|
|
||||||
<li>Basic types
|
|
||||||
<ul>
|
|
||||||
<li>Arithmetic types
|
|
||||||
<li>Booleans
|
|
||||||
<li>Strings
|
|
||||||
</ul>
|
|
||||||
<li>Array types
|
|
||||||
<li>Struct types
|
|
||||||
<li>Pointer types
|
|
||||||
<li>Function types
|
|
||||||
<li>Interface types
|
|
||||||
<li>Slice types
|
|
||||||
<li>Map types
|
|
||||||
<li>Channel types
|
|
||||||
<li>Type equality
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Expressions
|
|
||||||
<ul>
|
|
||||||
<li>Operands
|
|
||||||
<ul>
|
|
||||||
<li>Constants
|
|
||||||
<li>Qualified identifiers
|
|
||||||
<li>Composite literals
|
|
||||||
<li>Function literals
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Primary expressions
|
|
||||||
<ul>
|
|
||||||
<li>Selectors
|
|
||||||
<li>Indexes
|
|
||||||
<li>Slices
|
|
||||||
<li>Type guards
|
|
||||||
<li>Calls
|
|
||||||
<ul>
|
|
||||||
<li>Parameter passing
|
|
||||||
</ul>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Operators
|
|
||||||
<ul>
|
|
||||||
<li>Arithmetic operators
|
|
||||||
<ul>
|
|
||||||
<li>Integer overflow
|
|
||||||
</ul>
|
|
||||||
<li>Comparison operators
|
|
||||||
<li>Logical operators
|
|
||||||
<li>Address operators
|
|
||||||
<li>Communication operators
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Constant expressions
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Statements
|
|
||||||
<ul>
|
|
||||||
<li>Label declarations
|
|
||||||
<li>Expression statements
|
|
||||||
<li>IncDec statements
|
|
||||||
<li>Assignments
|
|
||||||
<li>If statements
|
|
||||||
<li>Switch statements
|
|
||||||
<li>For statements
|
|
||||||
<li>Go statements
|
|
||||||
<li>Select statements
|
|
||||||
<li>Return statements
|
|
||||||
<li>Break statements
|
|
||||||
<li>Continue statements
|
|
||||||
<li>Label declaration
|
|
||||||
<li>Goto statements
|
|
||||||
<li>Defer statements
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Function declarations
|
|
||||||
<ul>
|
|
||||||
<li>Method declarations
|
|
||||||
<li>Predeclared functions
|
|
||||||
<ul>
|
|
||||||
<li>Length and capacity
|
|
||||||
<li>Conversions
|
|
||||||
<li>Allocation
|
|
||||||
<li>Making slices, maps, and channels
|
|
||||||
</ul>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<li>Packages
|
|
||||||
|
|
||||||
<li>Program initialization and execution
|
|
||||||
|
|
||||||
<li>Systems considerations
|
|
||||||
<ul>
|
|
||||||
<li>Package unsafe
|
|
||||||
<li>Size and alignment guarantees
|
|
||||||
</ul>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<hr>
|
|
||||||
|
|
||||||
<h2>Introduction</h2>
|
<h2>Introduction</h2>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
@ -301,7 +156,7 @@ compile/link model to generate executable binaries.
|
|||||||
The grammar is compact and regular, allowing for easy analysis by
|
The grammar is compact and regular, allowing for easy analysis by
|
||||||
automatic tools such as integrated development environments.
|
automatic tools such as integrated development environments.
|
||||||
</p>
|
</p>
|
||||||
|
<hr>
|
||||||
<h2>Notation</h2>
|
<h2>Notation</h2>
|
||||||
<p>
|
<p>
|
||||||
The syntax is specified using Extended Backus-Naur Form (EBNF):
|
The syntax is specified using Extended Backus-Naur Form (EBNF):
|
||||||
@ -344,6 +199,7 @@ The form <tt>"a ... b"</tt> represents the set of characters from
|
|||||||
Where possible, recursive productions are used to express evaluation order
|
Where possible, recursive productions are used to express evaluation order
|
||||||
and operator precedence syntactically.
|
and operator precedence syntactically.
|
||||||
</p>
|
</p>
|
||||||
|
<hr>
|
||||||
|
|
||||||
<h2>Source code representation</h2>
|
<h2>Source code representation</h2>
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user