Siena Fast Forwarding Documentation (v. 1.9.3)

Syntax of the Input to the Driver Program

This page contains a (almost complete) formal specification of the syntax of the driver program. An example is also available from the Example Section:

DriverInput
Statement
DriverInput Statement

Statement
IFConfig
Select
%consolidate
%print_statistics
%statistics_only
%timer_start
%timer_stop
%output_on
%output_off
%output_to  // to standard output
%output_to filename (C-style string)
%pre_process_limit
%print_statistics format (C-style string)
%clear
%clear_recycle
%pre_process_limit = Number

IFConfig
ifconfig Number Predicate

Predicate
Constraint
Predicate Or Constraint
Predicate And Constraint

Or
||
|
\/

And
&&
,
/\

Constraint
Name Operator LiteralValue
Name any Type  // any-value constraint

Name
{A-Za-z}{A-Za-z/.-}*

Operator
=
<
>
=*  // prefix
*=  // suffix
**  // substring

LiteralValue
C-style integer literal
C-style string literal
C-style double literal
true
false

Number
C-style integer literal

Type
integer
string
boolean
double
any

Select
select Message

Message
Attribute
Message Attribute

Attribute
Name = LiteralValue