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 <gardgreg...@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 {