User manual

Chapter 10: Developing with ESS 55
Class "boo" is defined (with package slot foo) but no metadata object
found to revise subclass information---not exported?
You can safely ignore this warnings.
S4 METHODS:
Similarly to function definitions modified methods are assigned in the local method
table in the namespace:foo. New methods are assigned into .GlobalEnv, but with
the environment pointing to namespace:foo. There is a suttle catch with method
caching in R though. See the code in etc/ESSR/developer.R for more details.
S3 METHODS:
S3 methods are not automatically registered. You can register them manually after
you have inserted method name.my class into your package environment using ess-
developer, like follows:
registerS3method("method name", "my class", my package:::method name.my class)
If you don’t register your S3 method, R will call the registered (aka cached) S3
method instead of the new method that ess-developer inserted in the package
environment.
C-c C-r(ess-eval-region and functions that depend on it (ess-eval-paragraph,
ess-eval-buffer etc., behave as ess-load-file’, but restrict the evaluation to the cor-
responding region.
C-c C-f (ess-eval-function) and friends check if the current function’s name can be
found in a namespace:foo or package:foo for a ’foo’ from ‘ess-developer-packages’. If
found, and new function definition differs from the old one, the function is assigned
into that namespace. If not found, it is assigned into .GlobalEnv.