Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: ml/ocaml/amble/extracted
Source used for this grammar: David Touzet, Amble.ecore
, 2005/05/30
Boolean
, String
, Integer
, Element
, Program
, Process
, State
, Transition
, Trans
, Strans
, Transall
, Guard
, Action
, Network
, Channel
, Message
, Variable
), 0 root (—), 1 top (Element
), 0 bottom (—).[processes]
, [networks]
, [minId]
, [maxId]
, [instancesNb]
, [states]
, [transitions]
, [initial]
, [variables]
, [connectedTo]
, [isInitial]
, [incoming]
, [outgoing]
, [waitFor]
2, [guard]
, [action]
, [source]
2, [target]
2, [name]
3, [channels]
, [messages]
, [type]
, [initValue]
.Boolean ::= "true" "false"
String ::= string
Integer ::= integer
Element ::= Program
Element ::= Process
Element ::= State
Element ::= Guard
Element ::= Action
Element ::= Network
Element ::= Channel
Element ::= Message
Element ::= Variable
Program ::= [processes]::Process[networks]::Network
Process ::= [minId]::Integer [maxId]::Integer [instancesNb]::Integer [states]::State[transitions]::Transition [initial]::Action [variables]::Variable [connectedTo]::Network
State ::= [isInitial]::Boolean [incoming]::Transition[outgoing]::Transition
Transition ::= Trans
Transition ::= Strans
Transition ::= Transall
Trans ::= [waitFor]::Message
Strans ::= [guard]::Guard [action]::Action [source]::State [target]::State
Transall ::= [waitFor]::Message
Guard ::= [name]::String
Action ::= [name]::String
Network ::=
[channels]::Channel
Channel ::=
[messages]::Message
[source]::Process [target]::ProcessMessage ::= [name]::String
Variable ::= [type]::String [initValue]::String