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 2019/09/13 00:47:40 UTC

[commons-bcel] branch master updated: More lambdas, less boilerplate.

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-bcel.git


The following commit(s) were added to refs/heads/master by this push:
     new 974c435  More lambdas, less boilerplate.
974c435 is described below

commit 974c435df5b3bf3658dc340940a6ee7d82fb3919
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Thu Sep 12 20:47:34 2019 -0400

    More lambdas, less boilerplate.
---
 .../apache/bcel/generic/InstructionComparator.java | 36 ++++++++--------
 .../java/org/apache/bcel/generic/MethodGen.java    |  8 +---
 src/main/java/org/apache/bcel/util/ClassPath.java  | 20 +++------
 .../org/apache/bcel/verifier/VerifierAppFrame.java | 48 +++-------------------
 .../bcel/verifier/structurals/LocalVariables.java  |  1 -
 src/test/java/org/apache/bcel/PerformanceTest.java | 18 ++++----
 .../bcel/classfile/JDKClassDumpTestCase.java       | 18 ++++----
 .../bcel/generic/JdkGenericDumpTestCase.java       | 14 +------
 8 files changed, 45 insertions(+), 118 deletions(-)

diff --git a/src/main/java/org/apache/bcel/generic/InstructionComparator.java b/src/main/java/org/apache/bcel/generic/InstructionComparator.java
index 9cb7f0a..a31e55a 100644
--- a/src/main/java/org/apache/bcel/generic/InstructionComparator.java
+++ b/src/main/java/org/apache/bcel/generic/InstructionComparator.java
@@ -33,30 +33,26 @@ package org.apache.bcel.generic;
  */
 public interface InstructionComparator {
 
-    InstructionComparator DEFAULT = new InstructionComparator() {
-
-        @Override
-        public boolean equals( final Instruction i1, final Instruction i2 ) {
-            if (i1.getOpcode() == i2.getOpcode()) {
-                if (i1 instanceof BranchInstruction) {
-                 // BIs are never equal to make targeters work correctly (BCEL-195)
-                    return false;
+    InstructionComparator DEFAULT = (i1, i2) -> {
+        if (i1.getOpcode() == i2.getOpcode()) {
+            if (i1 instanceof BranchInstruction) {
+             // BIs are never equal to make targeters work correctly (BCEL-195)
+                return false;
 //                } else if (i1 == i2) { TODO consider adding this shortcut
 //                    return true; // this must be AFTER the BI test
-                } else if (i1 instanceof ConstantPushInstruction) {
-                    return ((ConstantPushInstruction) i1).getValue().equals(
-                            ((ConstantPushInstruction) i2).getValue());
-                } else if (i1 instanceof IndexedInstruction) {
-                    return ((IndexedInstruction) i1).getIndex() == ((IndexedInstruction) i2)
-                            .getIndex();
-                } else if (i1 instanceof NEWARRAY) {
-                    return ((NEWARRAY) i1).getTypecode() == ((NEWARRAY) i2).getTypecode();
-                } else {
-                    return true;
-                }
+            } else if (i1 instanceof ConstantPushInstruction) {
+                return ((ConstantPushInstruction) i1).getValue().equals(
+                        ((ConstantPushInstruction) i2).getValue());
+            } else if (i1 instanceof IndexedInstruction) {
+                return ((IndexedInstruction) i1).getIndex() == ((IndexedInstruction) i2)
+                        .getIndex();
+            } else if (i1 instanceof NEWARRAY) {
+                return ((NEWARRAY) i1).getTypecode() == ((NEWARRAY) i2).getTypecode();
+            } else {
+                return true;
             }
-            return false;
         }
+        return false;
     };
 
 
diff --git a/src/main/java/org/apache/bcel/generic/MethodGen.java b/src/main/java/org/apache/bcel/generic/MethodGen.java
index 48d0776..b0743e3 100644
--- a/src/main/java/org/apache/bcel/generic/MethodGen.java
+++ b/src/main/java/org/apache/bcel/generic/MethodGen.java
@@ -23,7 +23,6 @@ import java.util.List;
 import java.util.Stack;
 import java.util.Hashtable;
 import java.util.Arrays;
-import java.util.Comparator;
 
 import org.apache.bcel.Const;
 import org.apache.bcel.classfile.AnnotationEntry;
@@ -358,12 +357,7 @@ public class MethodGen extends FieldGenOrMethodGen {
             }
         }
         if (size > 1) {
-            Arrays.sort(lg, new Comparator<LocalVariableGen>() {
-                @Override
-                public int compare(final LocalVariableGen o1, final LocalVariableGen o2) {
-                    return o1.getIndex() - o2.getIndex();
-                }
-            });
+            Arrays.sort(lg, (o1, o2) -> o1.getIndex() - o2.getIndex());
         }
         return lg;
     }
diff --git a/src/main/java/org/apache/bcel/util/ClassPath.java b/src/main/java/org/apache/bcel/util/ClassPath.java
index 7ac79fd..a9954c1 100644
--- a/src/main/java/org/apache/bcel/util/ClassPath.java
+++ b/src/main/java/org/apache/bcel/util/ClassPath.java
@@ -430,22 +430,14 @@ public class ClassPath implements Closeable {
 
     }
 
-    private static final FilenameFilter ARCHIVE_FILTER = new FilenameFilter() {
-
-        @Override
-        public boolean accept(final File dir, String name) {
-            name = name.toLowerCase(Locale.ENGLISH);
-            return name.endsWith(".zip") || name.endsWith(".jar");
-        }
+    private static final FilenameFilter ARCHIVE_FILTER = (dir, name) -> {
+        name = name.toLowerCase(Locale.ENGLISH);
+        return name.endsWith(".zip") || name.endsWith(".jar");
     };
 
-    private static final FilenameFilter MODULES_FILTER = new FilenameFilter() {
-
-        @Override
-        public boolean accept(final File dir, String name) {
-            name = name.toLowerCase(Locale.ENGLISH);
-            return name.endsWith(".jmod");
-        }
+    private static final FilenameFilter MODULES_FILTER = (dir, name) -> {
+        name = name.toLowerCase(Locale.ENGLISH);
+        return name.endsWith(".jmod");
     };
 
     public static final ClassPath SYSTEM_CLASS_PATH = new ClassPath(getClassPath());
diff --git a/src/main/java/org/apache/bcel/verifier/VerifierAppFrame.java b/src/main/java/org/apache/bcel/verifier/VerifierAppFrame.java
index 3d6b036..1baf276 100644
--- a/src/main/java/org/apache/bcel/verifier/VerifierAppFrame.java
+++ b/src/main/java/org/apache/bcel/verifier/VerifierAppFrame.java
@@ -126,13 +126,7 @@ public class VerifierAppFrame extends JFrame {
         jScrollPane1.getViewport().setBackground(Color.red);
         messagesScrollPane.getViewport().setBackground(Color.red);
         messagesScrollPane.setPreferredSize(new Dimension(10, 10));
-        classNamesJList.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
-
-            @Override
-            public void valueChanged( final ListSelectionEvent e ) {
-                classNamesJList_valueChanged(e);
-            }
-        });
+        classNamesJList.addListSelectionListener(e -> classNamesJList_valueChanged(e));
         classNamesJList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
         jScrollPane3.setBorder(BorderFactory.createLineBorder(Color.black));
         jScrollPane3.setPreferredSize(new Dimension(100, 100));
@@ -151,46 +145,16 @@ public class VerifierAppFrame extends JFrame {
         newFileMenuItem.setText("New...");
         newFileMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(78,
                 InputEvent.CTRL_MASK, true));
-        newFileMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-            @Override
-            public void actionPerformed( final ActionEvent e ) {
-                newFileMenuItem_actionPerformed(e);
-            }
-        });
+        newFileMenuItem.addActionListener(e -> newFileMenuItem_actionPerformed(e));
         pass3aTextPane.setEditable(false);
         pass3bTextPane.setEditable(false);
-        pass3aJList.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
-
-            @Override
-            public void valueChanged( final ListSelectionEvent e ) {
-                pass3aJList_valueChanged(e);
-            }
-        });
-        pass3bJList.addListSelectionListener(new javax.swing.event.ListSelectionListener() {
-
-            @Override
-            public void valueChanged( final ListSelectionEvent e ) {
-                pass3bJList_valueChanged(e);
-            }
-        });
+        pass3aJList.addListSelectionListener(e -> pass3aJList_valueChanged(e));
+        pass3bJList.addListSelectionListener(e -> pass3bJList_valueChanged(e));
         jMenu2.setText("Help");
         whatisMenuItem.setText("What is...");
-        whatisMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-            @Override
-            public void actionPerformed( final ActionEvent e ) {
-                whatisMenuItem_actionPerformed(e);
-            }
-        });
+        whatisMenuItem.addActionListener(e -> whatisMenuItem_actionPerformed(e));
         aboutMenuItem.setText("About");
-        aboutMenuItem.addActionListener(new java.awt.event.ActionListener() {
-
-            @Override
-            public void actionPerformed( final ActionEvent e ) {
-                aboutMenuItem_actionPerformed(e);
-            }
-        });
+        aboutMenuItem.addActionListener(e -> aboutMenuItem_actionPerformed(e));
         jSplitPane2.add(messagesPanel, JSplitPane.BOTTOM);
         messagesPanel.add(messagesScrollPane, null);
         messagesScrollPane.getViewport().add(messagesTextPane, null);
diff --git a/src/main/java/org/apache/bcel/verifier/structurals/LocalVariables.java b/src/main/java/org/apache/bcel/verifier/structurals/LocalVariables.java
index f884749..88dac52 100644
--- a/src/main/java/org/apache/bcel/verifier/structurals/LocalVariables.java
+++ b/src/main/java/org/apache/bcel/verifier/structurals/LocalVariables.java
@@ -26,7 +26,6 @@ import org.apache.bcel.verifier.exc.StructuralCodeConstraintException;
 /**
  * This class implements an array of local variables used for symbolic JVM
  * simulation.
- *
  */
 public class LocalVariables implements Cloneable {
 
diff --git a/src/test/java/org/apache/bcel/PerformanceTest.java b/src/test/java/org/apache/bcel/PerformanceTest.java
index 66fa8b2..4ae2ace 100644
--- a/src/test/java/org/apache/bcel/PerformanceTest.java
+++ b/src/test/java/org/apache/bcel/PerformanceTest.java
@@ -133,19 +133,15 @@ public final class PerformanceTest extends TestCase {
 
     public void testPerformance() {
         final File javaLib = new File(System.getProperty("java.home"), "lib");
-        javaLib.listFiles(new FileFilter() {
-
-            @Override
-            public boolean accept(final File file) {
-                if(file.getName().endsWith(".jar")) {
-                    try {
-                        test(file);
-                    } catch (final IOException e) {
-                        Assert.fail(e.getMessage());
-                    }
+        javaLib.listFiles((FileFilter) file -> {
+            if(file.getName().endsWith(".jar")) {
+                try {
+                    test(file);
+                } catch (final IOException e) {
+                    Assert.fail(e.getMessage());
                 }
-                return false;
             }
+            return false;
         });
     }
 
diff --git a/src/test/java/org/apache/bcel/classfile/JDKClassDumpTestCase.java b/src/test/java/org/apache/bcel/classfile/JDKClassDumpTestCase.java
index 9bf530e..b16c8e2 100644
--- a/src/test/java/org/apache/bcel/classfile/JDKClassDumpTestCase.java
+++ b/src/test/java/org/apache/bcel/classfile/JDKClassDumpTestCase.java
@@ -40,19 +40,15 @@ public class JDKClassDumpTestCase {
     @Test
     public void testPerformance() throws Exception {
         final File javaLib = new File(System.getProperty("java.home") + "/lib");
-        javaLib.listFiles(new FileFilter() {
-
-            @Override
-            public boolean accept(final File file) {
-                if (file.getName().endsWith(".jar")) {
-                    try {
-                        testJar(file);
-                    } catch (final Exception e) {
-                        Assert.fail(e.getMessage());
-                    }
+        javaLib.listFiles((FileFilter) file -> {
+            if (file.getName().endsWith(".jar")) {
+                try {
+                    testJar(file);
+                } catch (final Exception e) {
+                    Assert.fail(e.getMessage());
                 }
-                return false;
             }
+            return false;
         });
     }
 
diff --git a/src/test/java/org/apache/bcel/generic/JdkGenericDumpTestCase.java b/src/test/java/org/apache/bcel/generic/JdkGenericDumpTestCase.java
index 46de372..d891741 100644
--- a/src/test/java/org/apache/bcel/generic/JdkGenericDumpTestCase.java
+++ b/src/test/java/org/apache/bcel/generic/JdkGenericDumpTestCase.java
@@ -225,22 +225,12 @@ public class JdkGenericDumpTestCase {
 
     private File[] listJdkJars() throws Exception {
         final File javaLib = new File(javaHome, "lib");
-        return javaLib.listFiles(new FileFilter() {
-            @Override
-            public boolean accept(final File file) {
-                return file.getName().endsWith(".jar");
-            }
-        });
+        return javaLib.listFiles((FileFilter) file -> file.getName().endsWith(".jar"));
     }
 
     private File[] listJdkModules() throws Exception {
         final File javaLib = new File(javaHome, "jmods");
-        return javaLib.listFiles(new FileFilter() {
-            @Override
-            public boolean accept(final File file) {
-                return file.getName().endsWith(".jmod");
-            }
-        });
+        return javaLib.listFiles((FileFilter) file -> file.getName().endsWith(".jmod"));
     }
 
     private void testJar(final File file) throws Exception {