Skip to content
Snippets Groups Projects
Commit d31bb18f authored by Adam Welc's avatar Adam Welc
Browse files

Added R_identC function.

parent 65457313
Branches
No related tags found
No related merge requests found
......@@ -101,4 +101,23 @@ public class MethodsListDispatch {
return RNull.instance;
}
}
public abstract static class R_identC extends RExternalBuiltinNode.Arg2 {
@Specialization
protected Object identC(RAbstractStringVector e1, RAbstractStringVector e2) {
if (e1.getLength() == 1 && e2.getLength() == 1 && e1.getDataAt(0).equals(e2.getDataAt(0))) {
return RRuntime.LOGICAL_TRUE;
} else {
return RRuntime.LOGICAL_FALSE;
}
}
@SuppressWarnings("unused")
@Fallback
protected Object identC(Object e1, Object e2) {
return RRuntime.LOGICAL_FALSE;
}
}
}
......@@ -23,6 +23,7 @@ import com.oracle.truffle.r.library.graphics.GraphicsCCalls.C_PlotXY;
import com.oracle.truffle.r.library.grid.GridFunctionsFactory.InitGridNodeGen;
import com.oracle.truffle.r.library.methods.MethodsListDispatchFactory.R_M_setPrimitiveMethodsNodeGen;
import com.oracle.truffle.r.library.methods.MethodsListDispatchFactory.R_getClassFromCacheNodeGen;
import com.oracle.truffle.r.library.methods.MethodsListDispatchFactory.R_identCNodeGen;
import com.oracle.truffle.r.library.methods.MethodsListDispatchFactory.R_initMethodDispatchNodeGen;
import com.oracle.truffle.r.library.methods.MethodsListDispatchFactory.R_methodsPackageMetaNameNodeGen;
import com.oracle.truffle.r.library.methods.MethodsListDispatchFactory.R_set_method_dispatchNodeGen;
......@@ -253,6 +254,7 @@ public class ForeignFunctions {
case "R_get_slot":
case "R_hasSlot":
case "R_identC":
return R_identCNodeGen.create();
case "R_methods_test_MAKE_CLASS":
case "R_methods_test_NEW":
case "R_missingArg":
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment