View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *   https://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  
20  package org.apache.bcel.data;
21  
22  import java.lang.reflect.Constructor;
23  
24  /*
25   * A test for SWAP instruction.
26   * To be compiled with Eclipse Compiler (ecj) with source/target 1.4.
27   * This is a requirement for SWAP instruction to be generated.
28   * If compiled with javac source/target 1.1+ or ecj source/target 1.5+, no SWAP instruction is generated.
29   */
30  public class SWAP {
31      public static Constructor getTestConstructor(final Class theClass) throws NoSuchMethodException {
32          final Class[] args = { String.class };
33          try {
34              return theClass.getConstructor(args);
35          } catch (final NoSuchMethodException e) {
36          }
37          return theClass.getConstructor(new Class[0]);
38      }
39  }