diff options
author | Joe Hunkeler <jhunkeler@gmail.com> | 2015-08-11 16:51:37 -0400 |
---|---|---|
committer | Joe Hunkeler <jhunkeler@gmail.com> | 2015-08-11 16:51:37 -0400 |
commit | 40e5a5811c6ffce9b0974e93cdd927cbcf60c157 (patch) | |
tree | 4464880c571602d54f6ae114729bf62a89518057 /pkg/language/doc/isindef.hlp | |
download | iraf-osx-40e5a5811c6ffce9b0974e93cdd927cbcf60c157.tar.gz |
Repatch (from linux) of OSX IRAF
Diffstat (limited to 'pkg/language/doc/isindef.hlp')
-rw-r--r-- | pkg/language/doc/isindef.hlp | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/pkg/language/doc/isindef.hlp b/pkg/language/doc/isindef.hlp new file mode 100644 index 00000000..481d9cc0 --- /dev/null +++ b/pkg/language/doc/isindef.hlp @@ -0,0 +1,56 @@ +.help isindef Dec03 language +.ih +NAME +isindef -- test whether a value or expression is INDEF +.ih +USAGE +bool = isindef (expr) +.ih +PARAMETERS +.ls expr +A script variable or boolean expression. +.le +.ih +DESCRIPTION +\fIIsindef\fR is a boolean intrinsic function returning true ("yes") if the +\fIexpr\fR evaluates to INDEF, and false ("no") otherwise. When \fIexpr\fR +is a script variable or the literal string "INDEF" this function is equivalent +to a test for equality with INDEF, i.e. "x == INDEF". A less obvious use +is when INDEF values are used to test for less/greater-than evaluation +in boolean expressions which result in an INDEF value for the expression as a +whole (rather than a boolean return) and which can cause confusion about why +the expression apparently fails. INDEF values in scripts may only be used to +test for equality, otherwise the return value is indefinite and when used in +a compound expression the entire expression is also indefinite. The +\fIisindef\fR function provides a way to trap such cases in scripts. + +\fIIsindef\fR can only be called as a function in an expression, not as a task. +.ih +EXAMPLES +1. Test variables for INDEF values: + +.nf + cl> x = INDEF + cl> = (x == INDEF) + yes + cl> = isindef (x) + yes + cl> = isindef (x == INDEF) + no + + \fINote:\fR In this last case the function returns a 'no' since + the evaluation of "x == INDEF" is 'yes' and not 'INDEF'. + + cl> = isindef (x == INDEF || x < 0) + yes + + \fINote:\fR In this case the test "x < 0" is indefinite and + causes the entire expression to evaluate to INDEF, and so the + function returns 'yes' even though the first expression is a + valid boolean. +.fi +.ih +BUGS +.endhelp +.ih +SEE ALSO |