Example usage for org.objectweb.asm ClassReader readShort

List of usage examples for org.objectweb.asm ClassReader readShort

Introduction

In this page you can find the example usage for org.objectweb.asm ClassReader readShort.

Prototype

public short readShort(final int offset) 

Source Link

Document

Reads a signed short value in this ClassReader .

Usage

From source file:com.navercorp.pinpoint.profiler.instrument.classreading.SimpleClassMetadataReader.java

License:Apache License

SimpleClassMetadataReader(byte[] classBinary) {
    if (classBinary == null) {
        throw new NullPointerException("classBinary must not be null");
    }// ww w .ja  va2  s .c o  m

    final ClassReader classReader = new ClassReader(classBinary);

    int accessFlag = classReader.getAccess();
    String className = classReader.getClassName();
    String superClassName = classReader.getSuperName();
    String[] interfaceNameList = classReader.getInterfaces();

    //        int offset = 0;
    //        int version = classReader.readShort(offset + 6);
    //         offset is zero
    int version = classReader.readShort(6);

    this.simpleClassMetadata = new DefaultSimpleClassMetadata(version, accessFlag, className, superClassName,
            interfaceNameList, classBinary);
}

From source file:com.sun.tdk.jcov.instrument.CharacterRangeTableAttribute.java

License:Open Source License

@Override
protected Attribute read(ClassReader cr, int off, int len, char[] buf, int codeOff, Label[] labels) {
    int length = cr.readShort(off);
    CRTEntry[] entries = new CRTEntry[length];
    for (int i = 0; i < length; ++i) {
        int eoff = off + 2 + (i * 14);
        int start_pc = cr.readShort(eoff + 0);
        int end_pc = cr.readShort(eoff + 2);
        int char_start = cr.readInt(eoff + 4);
        int char_end = cr.readInt(eoff + 8);
        int flags = cr.readShort(eoff + 12);
        entries[i] = new CRTEntry(rootId, start_pc, end_pc, char_start, char_end, flags);
    }//from  w w  w  . j  a  v  a2s.c o m
    return new CharacterRangeTableAttribute(rootId, length, entries);
}