stopifnot {base} | R Documentation |
If any of the expressions in ...
are not all
TRUE
, stop
is called, producing an error message
indicating the first of the elements of ...
which were
not true.
stopifnot(...)
... |
any number of ( |
This function is intended for use in regression tests or also argument checking of functions, in particular to make them easier to read.
stopifnot(A, B)
is conceptually equivalent to
{ if(any(is.na(A)) || !all(A)) stop(...) ;
if(any(is.na(B)) || !all(B)) stop(...) }
.
(NULL
if all statements in ...
are TRUE
.)
stop
, warning
.
stopifnot(1 == 1, all.equal(pi, 3.14159265), 1 < 2) # all TRUE
m <- matrix(c(1,3,3,1), 2,2)
stopifnot(m == t(m), diag(m) == rep(1,2)) # all(.) |=> TRUE
op <- options(error = expression(NULL))
# "disable stop(.)" << Use with CARE! >>
stopifnot(all.equal(pi, 3.141593), 2 < 2, all(1:10 < 12), "a" < "b")
stopifnot(all.equal(pi, 3.1415927), 2 < 2, all(1:10 < 12), "a" < "b")
options(op)# revert to previous error handler