Try this:
g <- function(.x) tryCatch(stop.if.dims(.x), error=function(e)sprintf("Error
in %s: %s", deparse(sys.call(1)), e$message))
g(rbind(2, 3))
2011/2/3 Ernest Adrogué <[email protected]>
> Hi,
> Suppose a function that checks an object:
>
> stop.if.dims <- function(x) {
> if (! is.null(dim(x))) {
> stop("cannot handle dimensional data")
> }
> }
>
> This would be used by other functions that can only work with
> dimensionless objects. The problem is the error message would need to
> include the name of the function that called stop.if.dims, so that the
> user knows which function got an argument that was incorrect.
>
> How do I do this? Or maybe there is another way...
>
> --
> Ernest
>
> ______________________________________________
> [email protected] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O
[[alternative HTML version deleted]]
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.