control structure
using input as source expression block
You can use using input as
to establish a new current input scope
without actually initiating scanning of the data source belonging to that scope. This is useful if you want to
establish the input scope in which a function will be called, or if you want to establish a single source on which
you will perform a number of scanning operations in succession.
The following process uses using input as
to establish an input scope for a function:
define integer function sum-of-csv () as local integer sum initial { 0 } repeat scan #current-input match white-space* digit+ => number white-space* ","? set sum to sum + number again return sum process local integer total using input as file "numbers.csv" set total to sum-of-csv ()