mirror of
https://github.com/enso-org/enso.git
synced 2024-08-17 08:50:52 +03:00
Update to GraalVM 24.0.0 (#9647)
Update the GraalVM-related Maven packages from **23.1.2** to **24.0.0**. # Important Notes - Reverted workarounds mentioned in https://github.com/enso-org/enso/issues/9477 The language home search functionality in Truffle changed. It used to find the home for Enso from the class loader of `EnsoLanguage`: https://github.com/oracle/graal/blob/graal-23.1.2/truffle/src/com.oracle.truffle.polyglot/src/com/oracle/truffle/polyglot/LanguageCache.java#L362 In 24.0.0, the language home is no longer found via class loader, but via system properties: https://github.com/oracle/graal/blob/graal-24.0.0/truffle/src/com.oracle.truffle.polyglot/src/com/oracle/truffle/polyglot/LanguageCache.java#L353 I provided a "fix" for this by an explicit specification of the `org.graalvm.language.enso.home` system property in our launchers.
This commit is contained in:
parent
3b21f5579f
commit
0d915d0344
@ -31,7 +31,7 @@ val graalVersion = "21.0.2"
|
||||
// Version used for the Graal/Truffle related Maven packages
|
||||
// Keep in sync with GraalVM.version. Do not change the name of this variable,
|
||||
// it is used by the Rust build script via regex matching.
|
||||
val graalMavenPackagesVersion = "23.1.2"
|
||||
val graalMavenPackagesVersion = "24.0.0"
|
||||
val targetJavaVersion = "17"
|
||||
val defaultDevEnsoVersion = "0.0.0-dev"
|
||||
val ensoVersion = sys.env.getOrElse(
|
||||
|
@ -8,5 +8,5 @@ for opt in "$@"; do
|
||||
done
|
||||
|
||||
|
||||
exec java --module-path $COMP_PATH $EXTRA_OPTS $JAVA_OPTS -m org.enso.runtime/org.enso.EngineRunnerBootLoader "$@"
|
||||
exec java --module-path $COMP_PATH -Dorg.graalvm.language.enso.home=$COMP_PATH $EXTRA_OPTS $JAVA_OPTS -m org.enso.runtime/org.enso.EngineRunnerBootLoader "$@"
|
||||
exit
|
||||
|
@ -6,5 +6,5 @@ if /I %%A==--dump-graphs (
|
||||
set EXTRA_OPTS=%EXTRA_OPTS% -Dgraal.Dump=Truffle:1
|
||||
)
|
||||
)
|
||||
java --module-path %comp-dir% -Dpolyglot.compiler.IterativePartialEscape=true %EXTRA_OPTS% %JAVA_OPTS% -m org.enso.runtime/org.enso.EngineRunnerBootLoader %*
|
||||
java --module-path %comp-dir% -Dorg.graalvm.language.enso.home=%comp-dir% -Dpolyglot.compiler.IterativePartialEscape=true %EXTRA_OPTS% %JAVA_OPTS% -m org.enso.runtime/org.enso.EngineRunnerBootLoader %*
|
||||
exit /B %errorlevel%
|
||||
|
@ -328,77 +328,82 @@ Copyright notices related to this dependency can be found in the directory `org.
|
||||
|
||||
'js-language', licensed under the MIT License, is distributed with the engine.
|
||||
The license file can be found at `licenses/MIT`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.js.js-language-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.js.js-language-24.0.0`.
|
||||
|
||||
|
||||
'llvm-api', licensed under the New BSD License (3-clause BSD license), is distributed with the engine.
|
||||
The license file can be found at `licenses/BSD-3-Clause`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.llvm.llvm-api-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.llvm.llvm-api-24.0.0`.
|
||||
|
||||
|
||||
'polyglot', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-24.0.0`.
|
||||
|
||||
|
||||
'python-language', licensed under the MIT License, is distributed with the engine.
|
||||
The license file can be found at `licenses/MIT`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.python.python-language-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.python.python-language-24.0.0`.
|
||||
|
||||
|
||||
'python-resources', licensed under the MIT License, is distributed with the engine.
|
||||
The license file can be found at `licenses/MIT`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.python.python-resources-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.python.python-resources-24.0.0`.
|
||||
|
||||
|
||||
'regex', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.regex.regex-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.regex.regex-24.0.0`.
|
||||
|
||||
|
||||
'collections', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-24.0.0`.
|
||||
|
||||
|
||||
'nativeimage', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-24.0.0`.
|
||||
|
||||
|
||||
'word', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-24.0.0`.
|
||||
|
||||
|
||||
'icu4j', licensed under the Unicode/ICU License, is distributed with the engine.
|
||||
The license information can be found along with the copyright notices.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.shadowed.icu4j-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.shadowed.icu4j-24.0.0`.
|
||||
|
||||
|
||||
'json', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.shadowed.json-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.shadowed.json-24.0.0`.
|
||||
|
||||
|
||||
'xz', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.shadowed.xz-24.0.0`.
|
||||
|
||||
|
||||
'profiler-tool', licensed under the GNU General Public License, version 2, with the Classpath Exception, is distributed with the engine.
|
||||
The license file can be found at `licenses/GNU_General_Public_License__version_2__with_the_Classpath_Exception`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.tools.profiler-tool-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.tools.profiler-tool-24.0.0`.
|
||||
|
||||
|
||||
'truffle-api', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-api-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-api-24.0.0`.
|
||||
|
||||
|
||||
'truffle-nfi', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-nfi-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-nfi-24.0.0`.
|
||||
|
||||
|
||||
'truffle-nfi-libffi', licensed under the Universal Permissive License, Version 1.0, is distributed with the engine.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-nfi-libffi-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-nfi-libffi-24.0.0`.
|
||||
|
||||
|
||||
'jline', licensed under the The BSD License, is distributed with the engine.
|
||||
@ -451,11 +456,6 @@ The license file can be found at `licenses/MIT`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.slf4j.slf4j-api-2.0.9`.
|
||||
|
||||
|
||||
'xz', licensed under the Public Domain, is distributed with the engine.
|
||||
The license file can be found at `licenses/Public_Domain`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.tukaani.xz-1.9`.
|
||||
|
||||
|
||||
'cats-core_2.13', licensed under the MIT, is distributed with the engine.
|
||||
The license file can be found at `licenses/MIT`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.typelevel.cats-core_2.13-2.9.0`.
|
||||
|
@ -46,10 +46,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
|
@ -1 +0,0 @@
|
||||
Public domain
|
@ -4,6 +4,14 @@ Copyright (c) 1991, 2000, 2001 by Lucent Technologies.
|
||||
|
||||
Copyright (c) 1998, 2006, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2010, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2019, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2020, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -1,3 +0,0 @@
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -0,0 +1,7 @@
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2021, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -2,6 +2,8 @@ Copyright (c) 2008-2010 Bjoern Hoehrmann <bjoern@hoehrmann.de> See
|
||||
|
||||
Copyright (c) 2012, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2013, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2021 Werner Randelshofer, Switzerland.
|
||||
|
||||
Copyright (c) 2023, 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -143,27 +143,27 @@ Copyright notices related to this dependency can be found in the directory `org.
|
||||
|
||||
'polyglot', licensed under the Universal Permissive License, Version 1.0, is distributed with the launcher.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-24.0.0`.
|
||||
|
||||
|
||||
'collections', licensed under the Universal Permissive License, Version 1.0, is distributed with the launcher.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-24.0.0`.
|
||||
|
||||
|
||||
'nativeimage', licensed under the Universal Permissive License, Version 1.0, is distributed with the launcher.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-24.0.0`.
|
||||
|
||||
|
||||
'word', licensed under the Universal Permissive License, Version 1.0, is distributed with the launcher.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-24.0.0`.
|
||||
|
||||
|
||||
'truffle-api', licensed under the Universal Permissive License, Version 1.0, is distributed with the launcher.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-api-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-api-24.0.0`.
|
||||
|
||||
|
||||
'scala-java8-compat_2.13', licensed under the Apache-2.0, is distributed with the launcher.
|
||||
|
@ -1,3 +0,0 @@
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -0,0 +1,7 @@
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2021, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -2,6 +2,8 @@ Copyright (c) 2008-2010 Bjoern Hoehrmann <bjoern@hoehrmann.de> See
|
||||
|
||||
Copyright (c) 2012, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2013, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2021 Werner Randelshofer, Switzerland.
|
||||
|
||||
Copyright (c) 2023, 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -23,20 +23,20 @@ Copyright notices related to this dependency can be found in the directory `com.
|
||||
|
||||
'polyglot', licensed under the Universal Permissive License, Version 1.0, is distributed with the Base.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-24.0.0`.
|
||||
|
||||
|
||||
'collections', licensed under the Universal Permissive License, Version 1.0, is distributed with the Base.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-24.0.0`.
|
||||
|
||||
|
||||
'nativeimage', licensed under the Universal Permissive License, Version 1.0, is distributed with the Base.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-24.0.0`.
|
||||
|
||||
|
||||
'word', licensed under the Universal Permissive License, Version 1.0, is distributed with the Base.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-24.0.0`.
|
||||
|
||||
|
@ -2,6 +2,10 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2021, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
The above copyright notice and either this complete permission notice or at a
|
||||
|
||||
copyright rights in the Software, and any and all patent rights owned or
|
@ -268,27 +268,27 @@ Copyright notices related to this dependency can be found in the directory `org.
|
||||
|
||||
'polyglot', licensed under the Universal Permissive License, Version 1.0, is distributed with the project-manager.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.polyglot.polyglot-24.0.0`.
|
||||
|
||||
|
||||
'collections', licensed under the Universal Permissive License, Version 1.0, is distributed with the project-manager.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.collections-24.0.0`.
|
||||
|
||||
|
||||
'nativeimage', licensed under the Universal Permissive License, Version 1.0, is distributed with the project-manager.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.nativeimage-24.0.0`.
|
||||
|
||||
|
||||
'word', licensed under the Universal Permissive License, Version 1.0, is distributed with the project-manager.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.sdk.word-24.0.0`.
|
||||
|
||||
|
||||
'truffle-api', licensed under the Universal Permissive License, Version 1.0, is distributed with the project-manager.
|
||||
The license file can be found at `licenses/Universal_Permissive_License__Version_1.0`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-api-23.1.2`.
|
||||
Copyright notices related to this dependency can be found in the directory `org.graalvm.truffle.truffle-api-24.0.0`.
|
||||
|
||||
|
||||
'reactive-streams', licensed under the CC0, is distributed with the project-manager.
|
||||
|
@ -46,10 +46,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
|
||||
// Protocol Buffers - Google's data interchange format
|
||||
// Copyright 2008 Google Inc. All rights reserved.
|
||||
// https://developers.google.com/protocol-buffers/
|
||||
|
@ -1,3 +0,0 @@
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -0,0 +1,7 @@
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2021, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -2,6 +2,8 @@ Copyright (c) 2008-2010 Bjoern Hoehrmann <bjoern@hoehrmann.de> See
|
||||
|
||||
Copyright (c) 2012, 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2013, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
Copyright (c) 2021 Werner Randelshofer, Switzerland.
|
||||
|
||||
Copyright (c) 2023, 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -132,7 +132,7 @@ public final class UnresolvedSymbol implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@Bind("$node") Node node, @Cached("1") int ignore) {
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
var ctx = EnsoContext.get(node);
|
||||
return ctx.getBuiltins().function();
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ package org.enso.interpreter.runtime.callable.function;
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.CompilerDirectives.CompilationFinal;
|
||||
import com.oracle.truffle.api.RootCallTarget;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Idempotent;
|
||||
import com.oracle.truffle.api.dsl.Specialization;
|
||||
@ -14,6 +15,7 @@ import com.oracle.truffle.api.interop.UnsupportedTypeException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import com.oracle.truffle.api.nodes.RootNode;
|
||||
import com.oracle.truffle.api.source.SourceSection;
|
||||
import org.enso.interpreter.node.callable.InteropApplicationNode;
|
||||
@ -388,8 +390,8 @@ public final class Function implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached(value = "1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().function();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().function();
|
||||
}
|
||||
|
||||
public boolean isThunk() {
|
||||
|
@ -1,12 +1,12 @@
|
||||
package org.enso.interpreter.runtime.data;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.time.DateTimeException;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalTime;
|
||||
@ -78,8 +78,8 @@ public final class EnsoDate implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().date();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().date();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -93,8 +93,8 @@ public final class EnsoDate implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().date();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().date();
|
||||
}
|
||||
|
||||
@CompilerDirectives.TruffleBoundary
|
||||
|
@ -1,12 +1,13 @@
|
||||
package org.enso.interpreter.runtime.data;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.time.DateTimeException;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalTime;
|
||||
@ -220,8 +221,8 @@ public final class EnsoDateTime implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().dateTime();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().dateTime();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
|
@ -1,12 +1,12 @@
|
||||
package org.enso.interpreter.runtime.data;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.time.Duration;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
@ -35,13 +35,13 @@ public final class EnsoDuration implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().duration();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().duration();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().duration();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().duration();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
|
@ -3,13 +3,14 @@ package org.enso.interpreter.runtime.data;
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
|
||||
import com.oracle.truffle.api.TruffleFile;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.InvalidArrayIndexException;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
@ -360,7 +361,7 @@ public final class EnsoFile implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().file();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().file();
|
||||
}
|
||||
}
|
||||
|
@ -2,12 +2,12 @@ package org.enso.interpreter.runtime.data;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.time.DateTimeException;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalTime;
|
||||
@ -144,8 +144,8 @@ public final class EnsoTimeOfDay implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().timeOfDay();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().timeOfDay();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -159,8 +159,8 @@ public final class EnsoTimeOfDay implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().timeOfDay();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().timeOfDay();
|
||||
}
|
||||
|
||||
@CompilerDirectives.TruffleBoundary
|
||||
|
@ -1,12 +1,12 @@
|
||||
package org.enso.interpreter.runtime.data;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.time.DateTimeException;
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZoneOffset;
|
||||
@ -99,8 +99,8 @@ public final class EnsoTimeZone implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().timeZone();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().timeZone();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -114,7 +114,7 @@ public final class EnsoTimeZone implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().timeZone();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().timeZone();
|
||||
}
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
package org.enso.interpreter.runtime.data;
|
||||
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.lang.ref.PhantomReference;
|
||||
import org.enso.interpreter.dsl.Builtin;
|
||||
import org.enso.interpreter.runtime.EnsoContext;
|
||||
@ -75,8 +75,8 @@ public final class ManagedResource implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().managedResource();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().managedResource();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -90,7 +90,7 @@ public final class ManagedResource implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().managedResource();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().managedResource();
|
||||
}
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
package org.enso.interpreter.runtime.data;
|
||||
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import org.enso.interpreter.dsl.Builtin;
|
||||
import org.enso.interpreter.runtime.EnsoContext;
|
||||
import org.enso.interpreter.runtime.library.dispatch.TypesLibrary;
|
||||
@ -50,8 +50,8 @@ public final class Ref implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().ref();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().ref();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -65,7 +65,7 @@ public final class Ref implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().ref();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().ref();
|
||||
}
|
||||
}
|
||||
|
@ -3,12 +3,12 @@ package org.enso.interpreter.runtime.data.atom;
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
|
||||
import com.oracle.truffle.api.RootCallTarget;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.ArityException;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import com.oracle.truffle.api.nodes.RootNode;
|
||||
import com.oracle.truffle.api.source.SourceSection;
|
||||
import java.util.ArrayList;
|
||||
@ -440,8 +440,8 @@ public final class AtomConstructor implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().function();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().function();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -450,7 +450,7 @@ public final class AtomConstructor implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().function();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().function();
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package org.enso.interpreter.runtime.data.hash;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Cached.Shared;
|
||||
import com.oracle.truffle.api.frame.VirtualFrame;
|
||||
@ -10,6 +11,7 @@ import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import com.oracle.truffle.api.profiles.ConditionProfile;
|
||||
import org.enso.interpreter.dsl.Builtin;
|
||||
import org.enso.interpreter.node.expression.builtin.meta.EqualsNode;
|
||||
@ -147,8 +149,8 @@ public final class EnsoHashMap implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage(library = TypesLibrary.class)
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().map();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().map();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -157,8 +159,8 @@ public final class EnsoHashMap implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().map();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().map();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
|
@ -2,11 +2,12 @@ package org.enso.interpreter.runtime.data.text;
|
||||
|
||||
import com.ibm.icu.text.Normalizer2;
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import com.oracle.truffle.api.strings.TruffleString;
|
||||
import com.oracle.truffle.api.strings.TruffleString.Encoding;
|
||||
import java.util.ArrayDeque;
|
||||
@ -201,8 +202,8 @@ public final class Text implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().text();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().text();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -239,8 +240,8 @@ public final class Text implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached(value = "1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().text();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().text();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1,6 +1,7 @@
|
||||
package org.enso.interpreter.runtime.data.vector;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Cached.Shared;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
@ -141,8 +142,8 @@ final class Array implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().array();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().array();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -248,7 +249,7 @@ final class Array implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().array();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().array();
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package org.enso.interpreter.runtime.data.vector;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.ImportStatic;
|
||||
import com.oracle.truffle.api.interop.ArityException;
|
||||
@ -11,6 +12,7 @@ import com.oracle.truffle.api.interop.UnsupportedTypeException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import com.oracle.truffle.api.profiles.BranchProfile;
|
||||
import org.enso.interpreter.runtime.EnsoContext;
|
||||
import org.enso.interpreter.runtime.data.EnsoObject;
|
||||
@ -84,8 +86,8 @@ final class ArrayProxy implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().array();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().array();
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -100,7 +102,7 @@ final class ArrayProxy implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().array();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().array();
|
||||
}
|
||||
}
|
||||
|
@ -176,12 +176,12 @@ final class ArraySlice implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
boolean hasType(@Shared("ignore") @Cached("1") int ignore) {
|
||||
boolean hasType() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@Bind("$node") Node node, @Shared("ignore") @Cached("1") int ignore) {
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
var ctx = EnsoContext.get(node);
|
||||
return ctx.getBuiltins().array();
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package org.enso.interpreter.runtime.data.vector;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.InvalidArrayIndexException;
|
||||
@ -73,8 +74,8 @@ abstract class Vector implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().vector();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().vector();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -92,8 +93,8 @@ abstract class Vector implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().vector();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().vector();
|
||||
}
|
||||
|
||||
//
|
||||
|
@ -3,11 +3,10 @@ package org.enso.interpreter.runtime.error;
|
||||
import com.oracle.truffle.api.CompilerDirectives.TruffleBoundary;
|
||||
import com.oracle.truffle.api.TruffleStackTrace;
|
||||
import com.oracle.truffle.api.TruffleStackTraceElement;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.exception.AbstractTruffleException;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
@ -128,8 +127,8 @@ public final class DataflowError extends AbstractTruffleException {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().dataflowError();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().dataflowError();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
@ -178,7 +177,7 @@ public final class DataflowError extends AbstractTruffleException {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().dataflowError();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().dataflowError();
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package org.enso.interpreter.runtime.error;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.NeverDefault;
|
||||
import com.oracle.truffle.api.exception.AbstractTruffleException;
|
||||
@ -144,13 +145,13 @@ public final class PanicException extends AbstractTruffleException implements En
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().panic();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().panic();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getMetaObject(@CachedLibrary("this") InteropLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().panic();
|
||||
Type getMetaObject(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().panic();
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
|
@ -1,11 +1,10 @@
|
||||
package org.enso.interpreter.runtime.error;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.InvalidArrayIndexException;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
@ -245,8 +244,8 @@ public final class Warning implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().warning();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().warning();
|
||||
}
|
||||
|
||||
public static Warning wrapMapError(WarningsLibrary warningsLib, Warning warning, long index) {
|
||||
|
@ -1,6 +1,5 @@
|
||||
package org.enso.interpreter.runtime.library.dispatch;
|
||||
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
@ -15,10 +14,7 @@ public class DefaultBooleanExports {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
static Type getType(
|
||||
Boolean receiver,
|
||||
@CachedLibrary("receiver") TypesLibrary thisLib,
|
||||
@Cached(value = "1") int ignore) {
|
||||
static Type getType(Boolean receiver, @CachedLibrary("receiver") TypesLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().bool().getType();
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,5 @@
|
||||
package org.enso.interpreter.runtime.library.dispatch;
|
||||
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
@ -15,10 +14,7 @@ public class DefaultDoubleExports {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
static Type getType(
|
||||
Double receiver,
|
||||
@CachedLibrary("receiver") TypesLibrary thisLib,
|
||||
@Cached(value = "1") int ignore) {
|
||||
static Type getType(Double receiver, @CachedLibrary("receiver") TypesLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().number().getFloat();
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,5 @@
|
||||
package org.enso.interpreter.runtime.library.dispatch;
|
||||
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
@ -15,8 +14,7 @@ public class DefaultLongExports {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
static Type getType(
|
||||
Long receiver, @CachedLibrary("receiver") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
static Type getType(Long receiver, @CachedLibrary("receiver") TypesLibrary thisLib) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().number().getInteger();
|
||||
}
|
||||
}
|
||||
|
@ -1,12 +1,13 @@
|
||||
package org.enso.interpreter.runtime.number;
|
||||
|
||||
import com.oracle.truffle.api.CompilerDirectives;
|
||||
import com.oracle.truffle.api.dsl.Cached;
|
||||
import com.oracle.truffle.api.dsl.Bind;
|
||||
import com.oracle.truffle.api.interop.InteropLibrary;
|
||||
import com.oracle.truffle.api.interop.UnsupportedMessageException;
|
||||
import com.oracle.truffle.api.library.CachedLibrary;
|
||||
import com.oracle.truffle.api.library.ExportLibrary;
|
||||
import com.oracle.truffle.api.library.ExportMessage;
|
||||
import com.oracle.truffle.api.nodes.Node;
|
||||
import java.math.BigInteger;
|
||||
import org.enso.interpreter.runtime.EnsoContext;
|
||||
import org.enso.interpreter.runtime.data.EnsoObject;
|
||||
@ -139,8 +140,8 @@ public final class EnsoBigInteger implements EnsoObject {
|
||||
}
|
||||
|
||||
@ExportMessage
|
||||
Type getType(@CachedLibrary("this") TypesLibrary thisLib, @Cached("1") int ignore) {
|
||||
return EnsoContext.get(thisLib).getBuiltins().number().getInteger();
|
||||
Type getType(@Bind("$node") Node node) {
|
||||
return EnsoContext.get(node).getBuiltins().number().getInteger();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -10,7 +10,7 @@ import scala.collection.immutable.Seq
|
||||
*/
|
||||
object GraalVM {
|
||||
// Keep in sync with graalMavenPackagesVersion in build.sbt
|
||||
val version: String = "23.1.2"
|
||||
val version: String = "24.0.0"
|
||||
|
||||
/** The list of modules that are included in the `component` directory in engine distribution.
|
||||
* When invoking the `java` command, these modules need to be put on the module-path.
|
||||
@ -64,7 +64,7 @@ object GraalVM {
|
||||
"org.graalvm.tools" % "profiler-tool" % version,
|
||||
"org.graalvm.shadowed" % "json" % version,
|
||||
"org.graalvm.shadowed" % "icu4j" % version,
|
||||
"org.tukaani" % "xz" % "1.9"
|
||||
"org.graalvm.shadowed" % "xz" % version
|
||||
)
|
||||
|
||||
val jsPkgs = Seq(
|
||||
|
@ -18,7 +18,6 @@ Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2017, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2021, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
|
@ -2,3 +2,5 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
The above copyright notice and either this complete permission notice or at a
|
||||
copyright rights in the Software, and any and all patent rights owned or
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2021, 2023, Oracle and/or its affiliates. All rights reserved.
|
@ -1,3 +1,3 @@
|
||||
DB9DA9C510DFA8BEC90E4783DC4B38250348A933AC619F8B23F524468A717D66
|
||||
4D34F128EF38C7A04EAF5F44292BD67D157A107CF70DDB04080515EEF6541AF1
|
||||
3C1492E81A27B2CAA831AD90F496EAC6E7F31D2C0B728B3BB18E49D93C991149
|
||||
E0C5A8781927F0BA473D87D6149D3914CBE9F03B03DF63C222227AE04E268908
|
||||
0
|
||||
|
@ -1,3 +0,0 @@
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
copyright notice, this list of conditions and the following disclaimer
|
||||
Redistributions of source code must retain the above copyright
|
@ -1,4 +1,3 @@
|
||||
Copyright 2019 Google Inc. All rights reserved.
|
||||
Copyright 2017 Google Inc. All rights reserved.
|
||||
Copyright 2014 Google Inc. All rights reserved.
|
||||
Copyright 2008 Google Inc. All rights reserved.
|
||||
|
@ -5,3 +5,7 @@ Copyright 2011 the V8 project authors. All rights reserved.
|
||||
Copyright (c) 2023, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 1991, 2000, 2001 by Lucent Technologies.
|
||||
Copyright (c) 1998, 2006, 2015, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2010, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2019, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2020, 2024, Oracle and/or its affiliates. All rights reserved.
|
@ -1,2 +0,0 @@
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
@ -14,7 +14,6 @@ Copyright (c) 2019, 2021, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2021, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2019, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2017, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2017, 2021, Oracle and/or its affiliates. All rights reserved.
|
@ -0,0 +1,4 @@
|
||||
Copyright (c) 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2007, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
|
||||
Copyright (c) 2021, 2023, Oracle and/or its affiliates. All rights reserved.
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user