diff graal/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/ObjectType.java @ 21770:c76742cc2c6f

Polishing inter-operability APIs: Exposing only Message, TruffleObject and ForeignAccess-related classes.
author Jaroslav Tulach <jaroslav.tulach@oracle.com>
date Mon, 08 Jun 2015 04:50:13 +0200
parents d6dba4c723c0
children cb051c368c80
line wrap: on
line diff
--- a/graal/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/ObjectType.java	Sun Jun 07 16:59:03 2015 +0200
+++ b/graal/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/ObjectType.java	Mon Jun 08 04:50:13 2015 +0200
@@ -24,11 +24,10 @@
  */
 package com.oracle.truffle.api.object;
 
+import com.oracle.truffle.api.interop.Message;
 import com.oracle.truffle.api.*;
 import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
 import com.oracle.truffle.api.interop.*;
-import com.oracle.truffle.api.interop.exception.*;
-import com.oracle.truffle.api.interop.messages.*;
 
 public class ObjectType {
     /**
@@ -72,16 +71,16 @@
     public void onPropertyAdded(Property property, Shape shapeBefore, Shape shapeAfter) {
     }
 
-    public ForeignAccessFactory getForeignAccessFactory() {
-        return new ForeignAccessFactory() {
+    public ForeignAccess getForeignAccessFactory() {
+        return ForeignAccess.create(new com.oracle.truffle.api.interop.ForeignAccess.Factory() {
 
-            public InteropPredicate getLanguageCheck() {
-                throw new UnsupportedMessageException(this.toString() + " cannot be shared");
+            public boolean canHandle(TruffleObject obj) {
+                throw new IllegalArgumentException(this.toString() + " cannot be shared");
             }
 
-            public CallTarget getAccess(Message tree) {
-                throw new UnsupportedMessageException(this.toString() + " cannot be shared; Message not possible: " + tree.toString());
+            public CallTarget accessMessage(Message tree) {
+                throw new IllegalArgumentException(this.toString() + " cannot be shared; Message not possible: " + tree.toString());
             }
-        };
+        });
     }
 }