Skip to content

Commit 7f126f8

Browse files
committed
Rename option to --warn-truffle-regex-fallback and separate from --use-truffle-regex
1 parent c6471b5 commit 7f126f8

File tree

4 files changed

+17
-17
lines changed

4 files changed

+17
-17
lines changed

src/main/java/org/truffleruby/options/Options.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,8 @@ public class Options {
129129
public final boolean WARN_EXPERIMENTAL;
130130
/** --use-truffle-regex=false */
131131
public final boolean USE_TRUFFLE_REGEX;
132-
/** --use-truffle-regex-with-warn=false */
133-
public final boolean USE_TRUFFLE_REGEX_WITH_WARN;
132+
/** --warn-truffle-regex-fallback=false */
133+
public final boolean WARN_TRUFFLE_REGEX_FALLBACK;
134134
/** --argv-globals=false */
135135
public final boolean ARGV_GLOBALS;
136136
/** --chomp-loop=false */
@@ -248,7 +248,7 @@ public Options(Env env, OptionValues options, LanguageOptions languageOptions) {
248248
WARN_DEPRECATED = options.get(OptionsCatalog.WARN_DEPRECATED_KEY);
249249
WARN_EXPERIMENTAL = options.get(OptionsCatalog.WARN_EXPERIMENTAL_KEY);
250250
USE_TRUFFLE_REGEX = options.get(OptionsCatalog.USE_TRUFFLE_REGEX_KEY);
251-
USE_TRUFFLE_REGEX_WITH_WARN = options.get(OptionsCatalog.USE_TRUFFLE_REGEX_WITH_WARN_KEY);
251+
WARN_TRUFFLE_REGEX_FALLBACK = options.get(OptionsCatalog.WARN_TRUFFLE_REGEX_FALLBACK_KEY);
252252
ARGV_GLOBALS = options.get(OptionsCatalog.ARGV_GLOBALS_KEY);
253253
CHOMP_LOOP = options.get(OptionsCatalog.CHOMP_LOOP_KEY);
254254
GETS_LOOP = options.get(OptionsCatalog.GETS_LOOP_KEY);
@@ -390,8 +390,8 @@ public Object fromDescriptor(OptionDescriptor descriptor) {
390390
return WARN_EXPERIMENTAL;
391391
case "ruby.use-truffle-regex":
392392
return USE_TRUFFLE_REGEX;
393-
case "ruby.use-truffle-regex-with-warn":
394-
return USE_TRUFFLE_REGEX_WITH_WARN;
393+
case "ruby.warn-truffle-regex-fallback":
394+
return WARN_TRUFFLE_REGEX_FALLBACK;
395395
case "ruby.argv-globals":
396396
return ARGV_GLOBALS;
397397
case "ruby.chomp-loop":

src/main/ruby/truffleruby/core/truffle/regexp_operations.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ def self.match_from(re, str, pos)
6464
Truffle::Boot.delay do
6565
COMPARE_ENGINES = Truffle::Boot.get_option('compare-regex-engines')
6666
USE_TRUFFLE_REGEX = Truffle::Boot.get_option('use-truffle-regex')
67-
USE_TRUFFLE_REGEX_WITH_WARN = Truffle::Boot.get_option('use-truffle-regex-with-warn')
67+
WARN_TRUFFLE_REGEX_FALLBACK = Truffle::Boot.get_option('warn-truffle-regex-fallback')
6868

6969
if Truffle::Boot.get_option('regexp-instrument-creation') or Truffle::Boot.get_option('regexp-instrument-match')
7070
at_exit do
@@ -76,7 +76,7 @@ def self.match_from(re, str, pos)
7676
def self.match_in_region(re, str, from, to, at_start, start)
7777
if COMPARE_ENGINES
7878
match_in_region_compare_engines(re, str, from, to, at_start, start)
79-
elsif USE_TRUFFLE_REGEX || USE_TRUFFLE_REGEX_WITH_WARN
79+
elsif USE_TRUFFLE_REGEX
8080
match_in_region_tregex(re, str, from, to, at_start, start)
8181
else
8282
Primitive.regexp_match_in_region(re, str, from, to, at_start, start)
@@ -116,8 +116,8 @@ def self.match_in_region_tregex(re, str, from, to, at_start, start)
116116
regex_result = compiled_regex.execBytes(str_bytes, from)
117117
end
118118
if bail_out
119-
if USE_TRUFFLE_REGEX_WITH_WARN
120-
warn "match_in_region_tregex(/#{re}/, \"#{str}\"@#{str.encoding}, #{from}, #{to}, #{at_start}, #{encoding_conversion}, #{start}) cant be run as a Truffle regexp and fell back to Joni"
119+
if WARN_TRUFFLE_REGEX_FALLBACK
120+
warn "match_in_region_tregex(#{re.inspect}, #{str.inspect}@#{str.encoding}, #{from}, #{to}, #{at_start}, #{encoding_conversion}, #{start}) can't be run as a Truffle regexp and fell back to Joni"
121121
end
122122
return Primitive.regexp_match_in_region(re, str, from, to, at_start, start)
123123
elsif regex_result.isMatch

src/options.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ EXPERT:
144144

145145
# Controlling the regular expression engines
146146
USE_TRUFFLE_REGEX: [use-truffle-regex, boolean, false, 'Use the Truffle regular expression engine for Regexp objects']
147-
USE_TRUFFLE_REGEX_WITH_WARN: [use-truffle-regex-with-warn, boolean, false, 'Use the Truffle regular expression engine for Regexp objects and warn when falling back to Joni']
147+
WARN_TRUFFLE_REGEX_FALLBACK: [warn-truffle-regex-fallback, boolean, false, 'Warn when Truffle Regex could not be used for a Regexp and instead Joni is used']
148148

149149
INTERNAL: # Options for debugging the TruffleRuby implementation
150150
EXPERIMENTAL:

src/shared/java/org/truffleruby/shared/options/OptionsCatalog.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ public class OptionsCatalog {
8383
public static final OptionKey<Boolean> WARN_DEPRECATED_KEY = new OptionKey<>(false);
8484
public static final OptionKey<Boolean> WARN_EXPERIMENTAL_KEY = new OptionKey<>(true);
8585
public static final OptionKey<Boolean> USE_TRUFFLE_REGEX_KEY = new OptionKey<>(false);
86-
public static final OptionKey<Boolean> USE_TRUFFLE_REGEX_WITH_WARN_KEY = new OptionKey<>(false);
86+
public static final OptionKey<Boolean> WARN_TRUFFLE_REGEX_FALLBACK_KEY = new OptionKey<>(false);
8787
public static final OptionKey<Boolean> ARGV_GLOBALS_KEY = new OptionKey<>(false);
8888
public static final OptionKey<Boolean> CHOMP_LOOP_KEY = new OptionKey<>(false);
8989
public static final OptionKey<Boolean> GETS_LOOP_KEY = new OptionKey<>(false);
@@ -597,9 +597,9 @@ public class OptionsCatalog {
597597
.stability(OptionStability.EXPERIMENTAL)
598598
.build();
599599

600-
public static final OptionDescriptor USE_TRUFFLE_REGEX_WITH_WARN = OptionDescriptor
601-
.newBuilder(USE_TRUFFLE_REGEX_WITH_WARN_KEY, "ruby.use-truffle-regex-with-warn")
602-
.help("Use the Truffle regular expression engine for Regexp objects and warn when falling back to Joni")
600+
public static final OptionDescriptor WARN_TRUFFLE_REGEX_FALLBACK = OptionDescriptor
601+
.newBuilder(WARN_TRUFFLE_REGEX_FALLBACK_KEY, "ruby.warn-truffle-regex-fallback")
602+
.help("Warn when Truffle Regex could not be used for a Regexp and instead Joni is used")
603603
.category(OptionCategory.EXPERT)
604604
.stability(OptionStability.EXPERIMENTAL)
605605
.build();
@@ -1229,8 +1229,8 @@ public static OptionDescriptor fromName(String name) {
12291229
return WARN_EXPERIMENTAL;
12301230
case "ruby.use-truffle-regex":
12311231
return USE_TRUFFLE_REGEX;
1232-
case "ruby.use-truffle-regex-with-warn":
1233-
return USE_TRUFFLE_REGEX_WITH_WARN;
1232+
case "ruby.warn-truffle-regex-fallback":
1233+
return WARN_TRUFFLE_REGEX_FALLBACK;
12341234
case "ruby.argv-globals":
12351235
return ARGV_GLOBALS;
12361236
case "ruby.chomp-loop":
@@ -1443,7 +1443,7 @@ public static OptionDescriptor[] allDescriptors() {
14431443
WARN_DEPRECATED,
14441444
WARN_EXPERIMENTAL,
14451445
USE_TRUFFLE_REGEX,
1446-
USE_TRUFFLE_REGEX_WITH_WARN,
1446+
WARN_TRUFFLE_REGEX_FALLBACK,
14471447
ARGV_GLOBALS,
14481448
CHOMP_LOOP,
14491449
GETS_LOOP,

0 commit comments

Comments
 (0)