Program Flow

> The following constructs are available for controlling program flow.

> If ... Then

> > If {expression} Then {statements1} Else {statements2}

> Evaluates the 'If' expression and, if true, executes the 'Then' statements. If false, the 'Else' statement are executed, the 'Else' part is optional - statements are executed until the end of the line.

> > If {expression1}
> > {statements1}
> > Else If {expression2}
> > {statements2}
> > Else If {expression3}
> > {statements3}
> > Else
> > {statements4}
> > EndIf

> This form of the If statement allows for more than one line of statements. The 'Else If' and 'Else' parts are optional. The 'Else' part is executed only if none of the 'If' or 'Else If' expressions were true.

> While ... Wend

> > While {expression}
> > {statements}
> > Wend

> A While loop continues executing until {expression} evaluates to false. {expression} is evaluated at the start of each loop.

> For ... Next

> > For {variable}={initalvalue} To {finalvalue} Step {step}
> > {statements}
> > Next

> A For/Next loop first assigns {initialvalue} to {variable} and then starts looping. The loop continues until {variable} reaches {finalvalue} and then terminates. Each loop, the value {step} is added to {variable}. If a step value is omitted, a default value of 1 is used.

> > For {variable}=Each {typename}
> > {statements}
> > Next

> This form of the For/Next loop allows you to iterate over all objects of a custom type.

> Repeat ... Until/Forever

> > Repeat
> > {statements}
> > Until {expression}

> A Repeat loop continues executing until {expression} evaluates to true. {expression} is evaluated at the end of each loop.

> > Repeat
> > {statements}
> > Forever

> A Repeat/Forever loop simply executes {statements} until the program ends, or an 'Exit' command is executed.

> Select ... Case

> > Select {expression}
> > Case {expressions1}
> > {statements1}
> > Case {expressions2}
> > {statements2}
> > Default
> > {statements3}
> > End Select

> First the 'Select' expression is evaluated. It is then compared with each of the 'Case' expression lists. If it matches a 'Case', then the statements in the 'Case' are executed.

> If the 'Select' expression matches none of the 'Case' expressions, the statements in the optional 'Default' section are executed.

> Breaking Out Of A Loop

> The 'Exit' command may be used to break out of any For...Next, While...Wend, Repeat...Until or Repeat...Forever loop.

> Using Includes

> Blitz also supports the 'Include' command. Include allows source code from an external file to be compiled as if it were part of the main program. Include must be followed by a quote enclosed filename. For example...

> Include "anotherfile.bb"

> Include allows you to break your program up into smaller, more manageable chunks.