Program = Program:: Directive+/ws
| Program:: (Directive+/ws) ws! CodeBagBody
-Statement = Fiber:: Source ":" (Instruction +/ ws) /ws
- | Literal:: int ":" "sendto" Port ";" /ws
- | NamedCodeBag:: name ":" "{" CodeBagBody "}" /ws
+Statement = Fiber:: Source ":" (Instruction +/ ws) /ws
+ | Literal:: int ":" "sendto" Port ";" /ws
+ | CodeBagDescriptor:: CodeBag ":" "sendto" Port ";" /ws
+ | NamedCodeBag:: name ":" "{" CodeBagBody "}" /ws
Instruction = Instruction::
(Brack:: "[" (int|(Star::"*"))? ("r")? "]" ws!)?
| Ack:: "ack" ws! Port
Source = Port
- | CodeBag
| ShipSpecific
Port = Port:: shipname "." portname