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 5807 d 4 h urbaneks /branches/R-exp-R5/ Experinental branch implementing "R5" ideas - extending S language to
create a more intuitive object system
 
52431 5869 d 6 h maechler /trunk/ match() and hence %in% now deal with "POSIXlt" consistently with e.g. "POSIXct"  
52273 5887 d 3 h ripley /trunk/src/main/ comment out unused vars  
52266 5887 d 22 h jmc /trunk/ make S3 method dispatch use consistent S4 inheritance  
51267 5979 d 14 h ripley /trunk/ check arity and args of one-argument primitives  
51265 5980 d 8 h ripley /trunk/ move UseMethod to standard arg matching  
51245 5982 d 11 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 6068 d 8 h ripley /trunk/ store vmax in const void *, consistently  
50715 6070 d 2 h murdoch /trunk/ Missing PROTECTs: string comparison can trigger allocations if recoding is needed. (PR#14114 and PR#14125).  
50690 6074 d 14 h ripley /trunk/src/ improve error messages from evalList  
50609 6083 d 19 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 6208 d 20 h rgentlem /trunk/ modifications to debug so that methods are debugged if the generic is  
48724 6259 d 23 h jmc /trunk/src/ make conversion of S4 objects in primitive methods conditional on isBasicClass, as done for useMethod in 48694  
48717 6260 d 13 h ripley /trunk/src/main/ more details in error message  
48698 6265 d 7 h jmc /trunk/src/main/ revert behavior of inherits() on S4 objects to 2.9.0  
48694 6266 d 5 h jmc /trunk/src/ make S3 use of S4 inheritance conditional on S3methods=TRUE in setClass()  
48487 6290 d 11 h ripley /trunk/ clean up  
48409 6301 d 2 h jmc /trunk/ fixes to make S3 and S4 classes and method selection work together; see ?Methods  
48346 6309 d 6 h maechler /trunk/src/ rationalization in install("<sym>") definitions  
48117 6346 d 21 h jmc /trunk/ restore S3 methods for S4 classes and add warnings  

Show All