Break (command): Difference between revisions
Gordon.dye (talk | contribs) No edit summary |
Gordon.dye (talk | contribs) |
||
Line 38: | Line 38: | ||
===Parameters=== | ===Parameters=== | ||
The -p parameter specifies which [[program]] or programs the statement pertains to. If not specified | The -p parameter specifies which [[program]] or programs the statement pertains to. When -p is specified BR will first check the mask against the current program path. If it matches (or if -p is not specified) then the full BR path to the current program is stored as the program name search string. However a -p substring value that does not match the currently loaded program can be used as a [[mask]] to apply to multiple program [[libraries]]. | ||
The parameters "label:" and "line number" will cause the program to enter [[STEP mode]] when the specified element is reached. | The parameters "label:" and "line number" will cause the program to enter [[STEP mode]] when the specified element is reached. | ||
The parameters "variable name", "function name", | The parameters "variable name", "function name", "array name" and "array element" will cause the program to enter [[STEP mode]] when the specified variable or array is changed. BREAK var-name also displays the variable assignment like [[Display (Command)|DISPLAY]] does, except only the first element that changed in an array will be displayed. | ||
BEGIN will cause the program to enter step mode upon entry. | BEGIN will cause the program to enter step mode upon entry at the first line. | ||
Adding the OFF parameter will | Adding the OFF parameter will clear (remove) the specified BREAK setting. ALL OFF will clear all currently active BREAK settings. | ||
<noinclude> | <noinclude> |
Revision as of 14:17, 9 June 2017
For disambiguation purposes, see also Break (Config).
The Break command causes the program to go into Step mode when a variable value changes, or the specified line number is encountered. "BREAK variable-name" also implies "DISPLAY variable-name," so the new value of the variable will be displayed when a BREAK variable-name occurs.
Any line numbers specified must refer to an executable line. A line with an active operation such as a flow control, value assignment or input-output operation will break. Comments, data statements and DIM statements will not break.
Examples
The following example will force the currently loaded program to go into step mode when the execution reaches line 1025:
BREAK 1025
It can also enter step mode when a variable is changed:
BREAK totalfiles
BREAK also works with specific array elements (as of 4.16):
BREAK CUSTOMER$(6)
Will cause a program break whenever CUSTOMER$(6) is changed.
Syntax
BREAK {[ [-p program name substring] {[<label>:[<clause>]]|[<line number>[:<clause>]]|[<variable name>]|[<function name>]|[BEGIN]} [OFF] ]|[ALL OFF]}
- Examples
BREAK [ -p program-name-substring ] BEGIN [ OFF ] (break upon entry) BREAK [ -p program-name-substring ] variable-name [ OFF ] BREAK [ -p program-name-substring ] line[:clause] [ OFF ] BREAK [ -p program-name-substring ] label:[clause] [ OFF ] BREAK [ -p program-name-substring ] FNname [ OFF ] BREAK ALL OFF
This command causes a break to occur upon encountering the indicated conditions. When this happens the program enters step mode.
Parameters
The -p parameter specifies which program or programs the statement pertains to. When -p is specified BR will first check the mask against the current program path. If it matches (or if -p is not specified) then the full BR path to the current program is stored as the program name search string. However a -p substring value that does not match the currently loaded program can be used as a mask to apply to multiple program libraries.
The parameters "label:" and "line number" will cause the program to enter STEP mode when the specified element is reached.
The parameters "variable name", "function name", "array name" and "array element" will cause the program to enter STEP mode when the specified variable or array is changed. BREAK var-name also displays the variable assignment like DISPLAY does, except only the first element that changed in an array will be displayed.
BEGIN will cause the program to enter step mode upon entry at the first line.
Adding the OFF parameter will clear (remove) the specified BREAK setting. ALL OFF will clear all currently active BREAK settings.