Mercurial > hg > truffle
comparison truffle/com.oracle.truffle.api.object/src/com/oracle/truffle/api/object/ObjectType.java @ 22354:0ad8cb1608be
Get the foreign access factory that matches a specific foreign object.
author | Danilo Ansaloni <danilo.ansaloni@oracle.com> |
---|---|
date | Tue, 10 Nov 2015 14:29:08 +0100 |
parents | 4eb6f179a326 |
children |
comparison
equal
deleted
inserted
replaced
22353:56e71849d356 | 22354:0ad8cb1608be |
---|---|
63 */ | 63 */ |
64 public Object createShapeData(Shape shape) { | 64 public Object createShapeData(Shape shape) { |
65 return null; | 65 return null; |
66 } | 66 } |
67 | 67 |
68 @Deprecated | |
68 public ForeignAccess getForeignAccessFactory() { | 69 public ForeignAccess getForeignAccessFactory() { |
69 return ForeignAccess.create(new com.oracle.truffle.api.interop.ForeignAccess.Factory() { | 70 return ForeignAccess.create(new com.oracle.truffle.api.interop.ForeignAccess.Factory() { |
70 | 71 |
71 public boolean canHandle(TruffleObject obj) { | 72 public boolean canHandle(TruffleObject obj) { |
72 throw new IllegalArgumentException(this.toString() + " cannot be shared"); | 73 throw new IllegalArgumentException(this.toString() + " cannot be shared"); |
75 public CallTarget accessMessage(Message tree) { | 76 public CallTarget accessMessage(Message tree) { |
76 throw new IllegalArgumentException(this.toString() + " cannot be shared; Message not possible: " + tree.toString()); | 77 throw new IllegalArgumentException(this.toString() + " cannot be shared; Message not possible: " + tree.toString()); |
77 } | 78 } |
78 }); | 79 }); |
79 } | 80 } |
81 | |
82 /** | |
83 * Create a {@link ForeignAccess} to access a specific {@link DynamicObject}. | |
84 * | |
85 * @param object the object to be accessed | |
86 */ | |
87 public ForeignAccess getForeignAccessFactory(DynamicObject object) { | |
88 return getForeignAccessFactory(); | |
89 } | |
80 } | 90 } |