Module rgo::ast [] [src]

Structs

Arguments

A list of arguments being passed to a function.

ArrayType
Assignment
BinaryExpr
Block
BreakStmt
ChanType
CompositeLit
ConstDecl

A constant declaration.

ConstSpec
ContinueStmt
Conversion
DeferStmt

A "defer" statement invokes a function whose execution is deferred to the moment the surrounding function returns, either because the surrounding function executed a return statement, reached the end of its function body, or because the corresponding goroutine is panicking.

EmptyStmt
FallthroughStmt
ForStmt
FuncCall
FuncDecl
FuncLit
FuncSignature

A function signature: return type(s) and argument types.

FuncType
GoStmt

A "go" statement starts the execution of a function call as an independent concurrent thread of control, or goroutine, within the same address space.

GotoStmt
Identifier
IfStmt

"If" statements specify the conditional execution of two branches according to the value of a boolean expression. If the expression evaluates to true, the "if" branch is executed, otherwise, if present, the "else" branch is executed.

ImportDecl

An import declaration. Contains a list of "import specs".

ImportSpec

An import spec. Can only appear in an import declaration (AFAIK).

IncDecStmt
IndexExpr
InterfaceType
LabeledStmt
MapType
MaybeQualifiedIdent

A potentially qualified identifier (e.g. math.Sin, but also someUnqualifiedIdent).

MethodDecl
ParameterDecl
Parameters
PointerType
ReturnStmt
SelectStmt
SelectorExpr
SendStmt
ShortVarDecl
SliceExpr
SliceType
Slicing
SourceFile

A complete source file.

StructType
SwitchStmt
TypeAssertion

A TypeAssertion contains the expression whose type is being asserted. This superficially differs from the grammar in the Go spec.

TypeDecl
UnaryOperation
VarDecl

Enums

BasicLit
BinaryOperation
DeclStmt

A statement declaration.

Else

The "else" portion of an if statement.

Expr
ImportKind
Literal
Operand

Operands denote the elementary values in an expression. An operand may be a literal, a (possibly qualified) non-blank identifier denoting a constant, variable, or function, a method expression yielding a function, or a parenthesized expression.

PrimaryExpr

Primary expressions are the operands for unary and binary expressions.

SimpleStmt

A simple statement.

Statement
TopLevelDecl

A top-level declaration - i.e. a declaration that may appear immediately after import declarations.

Type
TypeLiteral
UnaryExpr
UnaryOperator