Skip to content

GoPlus Syntax Spec

xushiwei edited this page Jun 18, 2022 · 7 revisions
Operand =
  Ident | BasicLit |
  ParenExpr | tupleExpr |
  FuncType | FuncLit |
  CompositeLit | ComprehensionExpr |
  ArrayType | SliceLit |
  StructType | PointerType | InterfaceType | MapType | ChanType

PrimaryExpr = 
  SelectorExpr | TypeAssertExpr |
  SliceExpr | IndexExpr |
  CallExpr | CommandExpr |
  CompositeLit

SelectorExpr = Operand '.' Ident
TypeAssertExpr = Operand '.' '(' Type ')'
SliceExpr = Operand '[' ... ']'
IndexExpr = Operand '[' ... ']'
CallExpr = Operand '(' Args ')' 
CommandExpr = Operand Args
CompositeLit = Operand '{' Elements '}'