or
or
Returns
trueorfalsedepending on whether one code-block out of multiple ones supplied is successful or unsuccessful.
Description
Returns a boolean results (true or false) depending on whether any of the code-blocks included as parameters are successful or not.
Usage
or: { code-block } { code-block } -> `<stdout>`
!or: { code-block } { code-block } -> `<stdout>`
or supports as many or as few code-blocks as you wish.
Examples
if { or { = 1+1==2 } { = 2+2==5 } { = 3+3==6 } } then {
out: At least one of those equations are correct
}
Detail
or does not set the exit number on failure so it is safe to use inside a try or trypipe block.
If or is prefixed by a bang (!or) then it returns true when one or more code-blocks are unsuccessful (ie the opposite of or).
Code-Block Testing
oronly executes code-blocks up until one of the code-blocks is successful then it exits the function and returnstrue.!oronly executes code-blocks while the code-blocks are successful. Once one is unsuccessful!orexits and returnstrue(ie itnots every code-block).
Synonyms
or!or
See Also
!(not): Reads the STDIN and exit number from previous process and not's it's conditionand: Returnstrueorfalsedepending on whether multiple conditions are metcatch: Handles the exception code raised bytryortrypipefalse: Returns afalsevalueif: Conditional statement to execute different blocks of code depending on the result of the conditiontrue: Returns atruevaluetry: Handles errors inside a block of codetrypipe: Checks state of each function in a pipeline and exits block on error