Minor refactoring
Project: http://git-wip-us.apache.org/repos/asf/groovy/repo Commit: http://git-wip-us.apache.org/repos/asf/groovy/commit/4fb80a1c Tree: http://git-wip-us.apache.org/repos/asf/groovy/tree/4fb80a1c Diff: http://git-wip-us.apache.org/repos/asf/groovy/diff/4fb80a1c Branch: refs/heads/master Commit: 4fb80a1ceca14e44bcd12231f4946533d7ca03ad Parents: a1d5b6a Author: sunlan <sun...@apache.org> Authored: Tue Mar 28 11:03:47 2017 +0800 Committer: sunlan <sun...@apache.org> Committed: Tue Mar 28 11:03:47 2017 +0800 ---------------------------------------------------------------------- src/main/org/codehaus/groovy/syntax/Types.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/groovy/blob/4fb80a1c/src/main/org/codehaus/groovy/syntax/Types.java ---------------------------------------------------------------------- diff --git a/src/main/org/codehaus/groovy/syntax/Types.java b/src/main/org/codehaus/groovy/syntax/Types.java index 7265009..5cb6154 100644 --- a/src/main/org/codehaus/groovy/syntax/Types.java +++ b/src/main/org/codehaus/groovy/syntax/Types.java @@ -1447,9 +1447,13 @@ public class Types addDescription( SWITCH_ENTRIES , "<valid in a switch body>" ); } - public static final Set<Integer> ASSIGNMENT_SET = new HashSet<Integer>(Arrays.asList(EQUAL, BITWISE_AND_EQUAL, BITWISE_OR_EQUAL, BITWISE_XOR_EQUAL, PLUS_EQUAL, MINUS_EQUAL, MULTIPLY_EQUAL, DIVIDE_EQUAL, INTDIV_EQUAL, MOD_EQUAL, POWER_EQUAL, LEFT_SHIFT_EQUAL, RIGHT_SHIFT_EQUAL, RIGHT_SHIFT_UNSIGNED_EQUAL, ELVIS_EQUAL)); + private static final int[] ASSIGNMENT_TYPES; + static { + ASSIGNMENT_TYPES = new int[] { EQUAL, BITWISE_AND_EQUAL, BITWISE_OR_EQUAL, BITWISE_XOR_EQUAL, PLUS_EQUAL, MINUS_EQUAL, MULTIPLY_EQUAL, DIVIDE_EQUAL, INTDIV_EQUAL, MOD_EQUAL, POWER_EQUAL, LEFT_SHIFT_EQUAL, RIGHT_SHIFT_EQUAL, RIGHT_SHIFT_UNSIGNED_EQUAL, ELVIS_EQUAL }; + Arrays.sort(ASSIGNMENT_TYPES); + } - public static boolean isAssignment(Integer type) { - return ASSIGNMENT_SET.contains(type); + public static boolean isAssignment(int type) { + return Arrays.binarySearch(ASSIGNMENT_TYPES, type) >= 0; } }