Mercurial > hg > truffle
diff truffle/com.oracle.truffle.api.vm/src/com/oracle/truffle/api/vm/PolyglotEngine.java @ 22196:364e3f024643
Java objects passed into globalSymbol should be converted into something that Truffle languages can understand - e.g. TruffleObject instances.
author | Jaroslav Tulach <jaroslav.tulach@oracle.com> |
---|---|
date | Fri, 25 Sep 2015 14:06:44 +0200 |
parents | 7afb5e5cc3ca |
children | 7abcbeb12d08 |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api.vm/src/com/oracle/truffle/api/vm/PolyglotEngine.java Thu Sep 24 15:50:38 2015 +0200 +++ b/truffle/com.oracle.truffle.api.vm/src/com/oracle/truffle/api/vm/PolyglotEngine.java Fri Sep 25 14:06:44 2015 +0200 @@ -293,7 +293,13 @@ * @see PolyglotEngine#findGlobalSymbol(java.lang.String) */ public Builder globalSymbol(String name, Object obj) { - globals.put(name, obj); + final Object truffleReady; + if (obj instanceof Number || obj instanceof String || obj instanceof Character || obj instanceof Boolean) { + truffleReady = obj; + } else { + truffleReady = JavaInterop.asTruffleObject(obj); + } + globals.put(name, truffleReady); return this; }