-
- Downloads
Fix: match.call() works properly with S3 dispatch
Involves fixing of matching arguments for UseMethod/NextMethod -- arguments with default values, for which the caller does not provide any value, are ignored and not passed to the S3 generic, not even as varargs. ArgumentMatcher puts a special placeholder into the signature for arguments that were 'unmatched' (with default value, but not provided). CallMatcherNode then removes such args from the arguments array and from the signature and continues as normal.
Showing
- com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/S3DispatchFunctions.java 3 additions, 2 deletions...cle/truffle/r/nodes/builtin/base/S3DispatchFunctions.java
- com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/ArgumentMatcher.java 1 addition, 0 deletions.../com/oracle/truffle/r/nodes/function/ArgumentMatcher.java
- com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/CallMatcherNode.java 77 additions, 24 deletions.../com/oracle/truffle/r/nodes/function/CallMatcherNode.java
- com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/RCallerHelper.java 36 additions, 41 deletions...rc/com/oracle/truffle/r/nodes/function/RCallerHelper.java
- com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/call/PrepareArguments.java 4 additions, 0 deletions...racle/truffle/r/nodes/function/call/PrepareArguments.java
- com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/ArgumentsSignature.java 49 additions, 20 deletions.../src/com/oracle/truffle/r/runtime/ArgumentsSignature.java
- com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RArguments.java 14 additions, 1 deletion....runtime/src/com/oracle/truffle/r/runtime/RArguments.java
Loading
Please register or sign in to comment