[PATCH] minor regex cleanup: use switch for enum

Isaac Levy isaac.r.levy at gmail.com
Mon Apr 23 19:26:56 UTC 2018


ping?


Isaac

On Wed, Apr 18, 2018 at 2:58 PM, Isaac Levy <isaac.r.levy at gmail.com> wrote:

> Hi,
>
> Minor improvement in readability (and probably perf) for Pattern. Switch
> is more consistent with the rest of the impl and the resulting tableswitch
> avoids a comparison for possessives.
>
> -Isaac
>
> --- a/src/java.base/share/classes/java/util/regex/Pattern.java
> +++ b/src/java.base/share/classes/java/util/regex/Pattern.java
> @@ -4356,7 +4356,9 @@
> -            if (type == Qtype.GREEDY)
> +            switch (type) {
> +            case GREEDY:
>                  return match0(matcher, i, j, seq);
> -            else if (type == Qtype.LAZY)
> +            case LAZY:
>                  return match1(matcher, i, j, seq);
> -            else
> +            default:
>                  return match2(matcher, i, j, seq);
> +            }
>
> @@ -4527,7 +4529,10 @@
> -                if (type == Qtype.GREEDY) {
> +                switch (type) {
> +                case GREEDY:
>                      ret = match0(matcher, i, cmin, seq);
> +                    break;
> -                } else if (type == Qtype.LAZY) {
> +                case LAZY:
>                      ret = match1(matcher, i, cmin, seq);
> +                    break;
> -                } else {
> +                default:
>                      ret = match2(matcher, i, cmin, seq);
>                  }
>
>


More information about the core-libs-dev mailing list