You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2022/12/08 16:16:00 UTC
[commons-compress] 29/38: Convert cascading if/else to switch
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-compress.git
commit 0b34836e188c60bf0232644a0809a3f8910df1ea
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Thu Dec 8 11:11:06 2022 -0500
Convert cascading if/else to switch
---
.../harmony/unpack200/SegmentConstantPool.java | 79 ++++++++++------------
1 file changed, 35 insertions(+), 44 deletions(-)
diff --git a/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java b/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java
index 09e77a96..edbd2317 100644
--- a/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java
+++ b/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java
@@ -65,32 +65,27 @@ public class SegmentConstantPool {
if (index < 0) {
throw new Pack200Exception("Cannot have a negative range");
}
- if (cp == UTF_8) {
+ switch (cp) {
+ case UTF_8:
return bands.cpUTF8Value(index);
- }
- if (cp == CP_INT) {
+ case CP_INT:
return bands.cpIntegerValue(index);
- }
- if (cp == CP_FLOAT) {
+ case CP_FLOAT:
return bands.cpFloatValue(index);
- }
- if (cp == CP_LONG) {
+ case CP_LONG:
return bands.cpLongValue(index);
- }
- if (cp == CP_DOUBLE) {
+ case CP_DOUBLE:
return bands.cpDoubleValue(index);
- }
- if (cp == CP_STRING) {
+ case CP_STRING:
return bands.cpStringValue(index);
- }
- if (cp == CP_CLASS) {
+ case CP_CLASS:
return bands.cpClassValue(index);
- }
- if (cp == SIGNATURE) {
+ case SIGNATURE:
return bands.cpSignatureValue(index);
- }
- if (cp == CP_DESCR) {
+ case CP_DESCR:
return bands.cpNameAndTypeValue(index);
+ default:
+ break;
}
throw new Error("Tried to get a value I don't know about: " + cp);
}
@@ -110,13 +105,17 @@ public class SegmentConstantPool {
final int index = (int) desiredIndex;
int realIndex = -1;
String[] array = null;
- if (cp == CP_FIELD) {
+ switch (cp) {
+ case CP_FIELD:
array = bands.getCpFieldClass();
- } else if (cp == CP_METHOD) {
+ break;
+ case CP_METHOD:
array = bands.getCpMethodClass();
- } else if (cp == CP_IMETHOD) {
+ break;
+ case CP_IMETHOD:
array = bands.getCpIMethodClass();
- } else {
+ break;
+ default:
throw new Error("Don't know how to handle " + cp);
}
realIndex = matchSpecificPoolEntryIndex(array, desiredClassName, index);
@@ -255,44 +254,36 @@ public class SegmentConstantPool {
if (index < 0) {
throw new Pack200Exception("Cannot have a negative range");
}
- if (cp == UTF_8) {
+ switch (cp) {
+ case UTF_8:
return bands.cpUTF8Value(index);
- }
- if (cp == CP_INT) {
+ case CP_INT:
return bands.cpIntegerValue(index);
- }
- if (cp == CP_FLOAT) {
+ case CP_FLOAT:
return bands.cpFloatValue(index);
- }
- if (cp == CP_LONG) {
+ case CP_LONG:
return bands.cpLongValue(index);
- }
- if (cp == CP_DOUBLE) {
+ case CP_DOUBLE:
return bands.cpDoubleValue(index);
- }
- if (cp == CP_STRING) {
+ case CP_STRING:
return bands.cpStringValue(index);
- }
- if (cp == CP_CLASS) {
+ case CP_CLASS:
return bands.cpClassValue(index);
- }
- if (cp == SIGNATURE) {
+ case SIGNATURE:
throw new Error("I don't know what to do with signatures yet");
// return null /* new CPSignature(bands.getCpSignature()[index]) */;
- }
- if (cp == CP_DESCR) {
+ case CP_DESCR:
throw new Error("I don't know what to do with descriptors yet");
// return null /* new CPDescriptor(bands.getCpDescriptor()[index])
// */;
- }
- if (cp == CP_FIELD) {
+ case CP_FIELD:
return bands.cpFieldValue(index);
- }
- if (cp == CP_METHOD) {
+ case CP_METHOD:
return bands.cpMethodValue(index);
- }
- if (cp == CP_IMETHOD) {
+ case CP_IMETHOD:
return bands.cpIMethodValue(index);
+ default:
+ break;
}
// etc
throw new Error("Get value incomplete");