Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
Apache BCEL Source Code Files
Apache BCEL Source Code Files are inside the Apache BCEL source package file
like bcel-6.6.1-src.zip.
Unzip the source package file and go to the "src/main" sub-directory,
you will see source code files.
Here is the list of Java source code files of the Apache BCEL 6.6.1 in \Users\fyicenter\bcel-6.6.1\src:
✍: FYIcenter
⏎ org/apache/bcel/generic/ArrayType.java
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.bcel.generic;
import org.apache.bcel.Const;
/**
* Denotes array type, such as int[][]
*/
public final class ArrayType extends ReferenceType {
private final int dimensions;
private final Type basicType;
/**
* Convenience constructor for array type, e.g. int[]
*
* @param type array type, e.g. T_INT
*/
public ArrayType(final byte type, final int dimensions) {
this(BasicType.getType(type), dimensions);
}
/**
* Convenience constructor for reference array type, e.g. Object[]
*
* @param className complete name of class (java.lang.String, e.g.)
*/
public ArrayType(final String className, final int dimensions) {
this(ObjectType.getInstance(className), dimensions);
}
/**
* Constructor for array of given type
*
* @param type type of array (may be an array itself)
*/
public ArrayType(final Type type, final int dimensions) {
super(Const.T_ARRAY, "<dummy>");
if (dimensions < 1 || dimensions > Const.MAX_BYTE) {
throw new ClassGenException("Invalid number of dimensions: " + dimensions);
}
switch (type.getType()) {
case Const.T_ARRAY:
final ArrayType array = (ArrayType) type;
this.dimensions = dimensions + array.dimensions;
basicType = array.basicType;
break;
case Const.T_VOID:
throw new ClassGenException("Invalid type: void[]");
default: // Basic type or reference
this.dimensions = dimensions;
basicType = type;
break;
}
final StringBuilder buf = new StringBuilder();
for (int i = 0; i < this.dimensions; i++) {
buf.append('[');
}
buf.append(basicType.getSignature());
super.setSignature(buf.toString());
}
/**
* @return true if both type objects refer to the same array type.
*/
@Override
public boolean equals(final Object type) {
if (type instanceof ArrayType) {
final ArrayType array = (ArrayType) type;
return array.dimensions == dimensions && array.basicType.equals(basicType);
}
return false;
}
/**
* @return basic type of array, i.e., for int[][][] the basic type is int
*/
public Type getBasicType() {
return basicType;
}
/**
* @return number of dimensions of array
*/
public int getDimensions() {
return dimensions;
}
/**
* @return element type of array, i.e., for int[][][] the element type is int[][]
*/
public Type getElementType() {
if (dimensions == 1) {
return basicType;
}
return new ArrayType(basicType, dimensions - 1);
}
/**
* @return a hash code value for the object.
*/
@Override
public int hashCode() {
return basicType.hashCode() ^ dimensions;
}
}
⏎ org/apache/bcel/generic/ArrayType.java
Or download all of them as a single archive file:
File name: bcel-6.6.1-sources.jar File size: 688374 bytes Release date: 2022-09-18 Download
⇒ Install Apache BCEL 6.5.0 Binary Package
⇐ Download and Install Apache BCEL Source Package
2021-08-21, ≈193🔥, 0💬
Popular Posts:
Snappy-Java is a Java port of the "snappy", a fast C++ compresser/decompresser developed by Google. ...
Apache Neethi provides general framework for the programmers to use WS Policy. It is compliant with ...
Apache Commons Lang 3 is the 3rd version of Apache Commons Lang, which provides a host of helper uti...
Jetty provides an HTTP server, HTTP client, and javax.servlet container. These components are open s...
JSP(tm) Standard Tag Library 1.1 implementation - Jakarta Taglibs hosts the Standard Taglib 1.1, an ...