The R Project SVN R

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
52864 5808 d 1 h urbaneks /branches/R-exp-R5/ Experinental branch implementing "R5" ideas - extending S language to
create a more intuitive object system
 
52431 5870 d 3 h maechler /trunk/ match() and hence %in% now deal with "POSIXlt" consistently with e.g. "POSIXct"  
52273 5888 d 0 h ripley /trunk/src/main/ comment out unused vars  
52266 5888 d 19 h jmc /trunk/ make S3 method dispatch use consistent S4 inheritance  
51267 5980 d 11 h ripley /trunk/ check arity and args of one-argument primitives  
51265 5981 d 5 h ripley /trunk/ move UseMethod to standard arg matching  
51245 5983 d 8 h ripley /trunk/ document in source files which primitives/.Internal are 'special'
make zero-arg primitives consistently builtin and not special, and check arity
list the specials (and some reasons) in R-ints
update now switch() is primitive
 
50745 6069 d 5 h ripley /trunk/ store vmax in const void *, consistently  
50715 6070 d 23 h murdoch /trunk/ Missing PROTECTs: string comparison can trigger allocations if recoding is needed. (PR#14114 and PR#14125).  
50690 6075 d 11 h ripley /trunk/src/ improve error messages from evalList  
50609 6084 d 16 h jmc /trunk/ Changes to fix efficiency in dispatch, potential recursive loops, and
incorrect signatures, all for S4 methods for primitive functions.

1. A bug in get_primitive_methods prevented all quick dispatch of primitives from
working. Fixing this exposed a problem in quickDispatch in methods
that prevented matching methods with traiiling "missing" in the
signature.

2. A mechanism was added to temporarily turn off all dispatch of methods for
primitives. The code for findInheritedMethods activates the
mechanism. At the moment, this is just for efficiency, but in
principle it could be needed to avoid recursive calls to
findInheritedMethods.

3. The signatures for "$" and "$<-" were modified to remove "name",
since the grammar prevents general objects for this argument.

Some additional changes were tested but not installed to allow a
general signature in methods for "[", "[[" and their replacement
versions. Problems found with the Matrix package for this change. See
the commented calls to DiispatchAnyOrEval in src/main.
 
49005 6209 d 17 h rgentlem /trunk/ modifications to debug so that methods are debugged if the generic is  
48724 6260 d 20 h jmc /trunk/src/ make conversion of S4 objects in primitive methods conditional on isBasicClass, as done for useMethod in 48694  
48717 6261 d 10 h ripley /trunk/src/main/ more details in error message  
48698 6266 d 4 h jmc /trunk/src/main/ revert behavior of inherits() on S4 objects to 2.9.0  
48694 6267 d 2 h jmc /trunk/src/ make S3 use of S4 inheritance conditional on S3methods=TRUE in setClass()  
48487 6291 d 8 h ripley /trunk/ clean up  
48409 6301 d 23 h jmc /trunk/ fixes to make S3 and S4 classes and method selection work together; see ?Methods  
48346 6310 d 3 h maechler /trunk/src/ rationalization in install("<sym>") definitions  
48117 6347 d 18 h jmc /trunk/ restore S3 methods for S4 classes and add warnings  

Show All