Code:
def foo
<<~Q
Qend
JRuby:
diff --git a/core/src/main/java/org/jruby/RubyString.java b/core/src/main/java/org/jruby/RubyString.java | |
index 2b42e03515..3c2dd7dc11 100644 | |
--- a/core/src/main/java/org/jruby/RubyString.java | |
+++ b/core/src/main/java/org/jruby/RubyString.java | |
@@ -1102,12 +1102,16 @@ public class RubyString extends RubyObject implements CharSequence, EncodingCapa | |
*/ | |
public static class FString extends RubyString { | |
private IRubyObject converted; | |
+ private final RubyFixnum hash; | |
+ private final int hashCode; |
diff --git a/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java b/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java | |
index 46177487d7..3c5f9cb821 100644 | |
--- a/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java | |
+++ b/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java | |
@@ -94,7 +94,7 @@ abstract class AbstractVariable implements BiVariable { | |
return (RubyObject) receiver.getRuntime().getTopSelf(); | |
} | |
- protected void updateByJavaObject(final Ruby runtime, Object... values) { | |
+ protected synchronized void updateByJavaObject(final Ruby runtime, Object... values) { |
diff --git a/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java b/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java | |
index 46177487d7..85ede943b4 100644 | |
--- a/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java | |
+++ b/core/src/main/java/org/jruby/embed/variable/AbstractVariable.java | |
@@ -104,8 +104,15 @@ abstract class AbstractVariable implements BiVariable { | |
} else { | |
javaType = javaObject.getClass(); | |
} | |
+ | |
+ updateRubyObjectFromJavaObject(runtime); |
%w[runtime wasm wasi].each {|pkg| require "/Users/headius/.m2/repository/com/dylibso/chicory/#{pkg}/0.0.3/#{pkg}-0.0.3.jar"} | |
module Chicory | |
%w[ | |
runtime.Module | |
runtime.HostImports | |
runtime.wasi.WasiOptions | |
runtime.wasi.WasiPreview1 | |
wasm.types.Value].each do |cls| | |
java_import "com.dylibso.chicory.#{cls}" |
commit dac864582a44da0017fdc5b85d431c05f40eb675 | |
Author: Charles Oliver Nutter <headius@headius.com> | |
Date: Sat Apr 22 12:40:27 2023 -0500 | |
criu testing | |
diff --git a/bin/jruby.sh b/bin/jruby.sh | |
index 00903f0ba8..fd62212a07 100755 | |
--- a/bin/jruby.sh | |
+++ b/bin/jruby.sh |
root@e7fc053b9e41:/instantOnDemo/jruby# time jruby -e 'puts "hello!"' | |
hello! | |
real 0m5.546s | |
user 0m9.524s | |
sys 0m0.796s | |
root@e7fc053b9e41:/instantOnDemo/jruby# jruby --checkpoint -e 'puts "hello!"' | |
Warming up JRuby... done! Saving checkpoint. | |
Killed | |
root@e7fc053b9e41:/instantOnDemo/jruby# time jruby --restore |
diff --git a/core/src/main/java/org/jruby/parser/StaticScope.java b/core/src/main/java/org/jruby/parser/StaticScope.java | |
index 66c9b71c61..32c644f730 100644 | |
--- a/core/src/main/java/org/jruby/parser/StaticScope.java | |
+++ b/core/src/main/java/org/jruby/parser/StaticScope.java | |
@@ -37,6 +37,7 @@ import java.util.Arrays; | |
import java.util.Collection; | |
import java.util.Collections; | |
import java.util.HashMap; | |
+import java.util.Map; | |
import java.util.function.BiConsumer; |
Code:
def foo
<<~Q
Qend
JRuby:
diff --git a/lib/parser/lexer.rl b/lib/parser/lexer.rl | |
index e477b06..88efafc 100644 | |
--- a/lib/parser/lexer.rl | |
+++ b/lib/parser/lexer.rl | |
@@ -445,6 +445,60 @@ class Parser::Lexer | |
# Ruby >= 32, regexp, exceptional case | |
!literal.regexp? | |
end | |
+ | |
+ def current_literal_munge_escape(current_literal) |
JRuby Java implementation
timeout default error
346.592k (± 5.2%) i/s - 1.747M in 5.055170s
timeout given error 350.905k (± 5.5%) i/s - 1.775M in 5.073569s
JRuby Ruby port of Java implementation
timeout default error