类 ModuleHashesAttribute
java.lang.Object
cn.taketoday.bytecode.Attribute
cn.taketoday.bytecode.commons.ModuleHashesAttribute
A ModuleHashes attribute. This attribute is specific to the OpenJDK and may change in the future.
- 作者:
- Remi Forax
-
字段概要
字段 -
构造器概要
构造器构造器说明Constructs an emptyModuleHashesAttribute.ModuleHashesAttribute(String algorithm, List<String> modules, List<byte[]> hashes) Constructs a newModuleHashesAttribute. -
方法概要
修饰符和类型方法说明protected Attributeread(ClassReader classReader, int offset, int length, char[] charBuffer, int codeAttributeOffset, Label[] labels) Reads aAttribute.typeattribute.protected ByteVectorwrite(ClassWriter classWriter, byte[] code, int codeLength, int maxStack, int maxLocals) Returns the byte array form of the content of this attribute.从类继承的方法 cn.taketoday.bytecode.Attribute
getLabels, isCodeAttribute, isUnknown
-
字段详细资料
-
algorithm
The name of the hashing algorithm. -
modules
A list of module names. -
hashes
The hash of the modules inmodules. The two lists must have the same size.
-
-
构造器详细资料
-
ModuleHashesAttribute
Constructs a newModuleHashesAttribute.- 参数:
algorithm- the name of the hashing algorithm.modules- a list of module names.hashes- the hash of the modules in 'modules'. The two lists must have the same size.
-
ModuleHashesAttribute
public ModuleHashesAttribute()Constructs an emptyModuleHashesAttribute. This object can be passed as a prototype to theClassReader.accept(ClassVisitor, Attribute[], int)method.
-
-
方法详细资料
-
read
protected Attribute read(ClassReader classReader, int offset, int length, char[] charBuffer, int codeAttributeOffset, Label[] labels) 从类复制的说明:AttributeReads aAttribute.typeattribute. This method must return a newAttributeobject, of typeAttribute.type, corresponding to the 'length' bytes starting at 'offset', in the given ClassReader.- 覆盖:
read在类中Attribute- 参数:
classReader- the class that contains the attribute to be read.offset- index of the first byte of the attribute's content inClassReader. The 6 attribute header bytes (attribute_name_index and attribute_length) are not taken into account here.length- the length of the attribute's content (excluding the 6 attribute header bytes).charBuffer- the buffer to be used to call the ClassReader methods requiring a 'charBuffer' parameter.codeAttributeOffset- index of the first byte of content of the enclosing Code attribute inClassReader, or -1 if the attribute to be read is not a Code attribute. The 6 attribute header bytes (attribute_name_index and attribute_length) are not taken into account here.labels- the labels of the method's code, or null if the attribute to be read is not a Code attribute.- 返回:
- a new
Attributeobject corresponding to the specified bytes.
-
write
protected ByteVector write(ClassWriter classWriter, byte[] code, int codeLength, int maxStack, int maxLocals) 从类复制的说明:AttributeReturns the byte array form of the content of this attribute. The 6 header bytes (attribute_name_index and attribute_length) must not be added in the returned ByteVector.- 覆盖:
write在类中Attribute- 参数:
classWriter- the class to which this attribute must be added. This parameter can be used to add the items that corresponds to this attribute to the constant pool of this class.code- the bytecode of the method corresponding to this Code attribute, or null if this attribute is not a Code attribute. Corresponds to the 'code' field of the Code attribute.codeLength- the length of the bytecode of the method corresponding to this code attribute, or 0 if this attribute is not a Code attribute. Corresponds to the 'code_length' field of the Code attribute.maxStack- the maximum stack size of the method corresponding to this Code attribute, or -1 if this attribute is not a Code attribute.maxLocals- the maximum number of local variables of the method corresponding to this code attribute, or -1 if this attribute is not a Code attribute.- 返回:
- the byte array form of this attribute.
-