Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: api/choco/extracted
Source used for this grammar: Mathieu Vénisse, Choco 1.0, ChocoModel.ecore
, 2008/07/18
LocatedElement
, OpConstraint
, Package
, Import
, ChocoProblem
, Element
, Expression
, ConstraintDef
, IntVar
, Domain
, IntConstant
, SymbolicTerm
, IntValue
, IntExp
, Constraint
, PostConstraint
, Boolean
, Integer
, String
), 0 root (—), 2 top (LocatedElement
, Boolean
), 0 bottom (—).[eq]
, [and2]
, [or2]
, [gt]
, [ge]
, [lt]
, [le]
, [plus]
, [name]
2, [import]
, [problem]
, [fqn]
, [elements]
, [op]
4, [left]
3, [right]
3, [domain]
, [lower]
, [upper]
, [val]
2, [term]
, [constraint]
.LocatedElement ::= Package
LocatedElement ::= Import
LocatedElement ::= ChocoProblem
LocatedElement ::= Element
LocatedElement ::= Domain
OpConstraint ::= [eq]::ε [and2]::ε [or2]::ε [gt]::ε [ge]::ε [lt]::ε [le]::ε [plus]::ε
Package ::=
[name]::String [import]::Import
[problem]::ChocoProblemImport ::= [fqn]::String
ChocoProblem ::=
[name]::String [elements]::Element
Element ::= Expression
Element ::= PostConstraint
Expression ::= ConstraintDef
Expression ::= IntVar
Expression ::= IntConstant
Expression ::= SymbolicTerm
Expression ::= IntValue
Expression ::= IntExp
Expression ::= Constraint
ConstraintDef ::= [op]::OpConstraint [left]::Expression [right]::Expression
IntVar ::= [domain]::Domain
Domain ::= [lower]::Integer [upper]::Integer
IntConstant ::= [val]::Integer
SymbolicTerm ::= [term]::Expression
IntValue ::= [val]::Integer
IntExp ::= [op]::OpConstraint [left]::Expression [right]::Expression
Constraint ::= [op]::OpConstraint [left]::Expression [right]::Expression
PostConstraint ::= [op]::OpConstraint [constraint]::ConstraintDef
Boolean ::= "true" "false"
Integer ::= integer
String ::= string