类org.objectweb.asm.Attribute源码实例Demo

下面列出了怎么用org.objectweb.asm.Attribute的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: Concurnas   文件: Textifier.java
/**
 * Prints a disassembled view of the given attribute.
 *
 * @param attribute an attribute.
 */
public void visitAttribute(final Attribute attribute) {
  stringBuilder.setLength(0);
  stringBuilder.append(tab).append("ATTRIBUTE ");
  appendDescriptor(-1, attribute.type);

  if (attribute instanceof TextifierSupport) {
    if (labelNames == null) {
      labelNames = new HashMap<>();
    }
    ((TextifierSupport) attribute).textify(stringBuilder, labelNames);
  } else {
    stringBuilder.append(" : unknown\n");
  }

  text.add(stringBuilder.toString());
}
 
源代码2 项目: Cafebabe   文件: FieldNode.java
@Override
public void visitAttribute(final Attribute attribute) {
	if (attrs == null) {
		attrs = new ArrayList<>(1);
	}
	attrs.add(attribute);
}
 
源代码3 项目: Cafebabe   文件: ClassNode.java
@Override
public void visitAttribute(final Attribute attribute) {
	if (attrs == null) {
		attrs = new ArrayList<>(1);
	}
	attrs.add(attribute);
}
 
源代码4 项目: Cafebabe   文件: MethodNode.java
@Override
public void visitAttribute(final Attribute attribute) {
	if (attrs == null) {
		attrs = new ArrayList<>(1);
	}
	attrs.add(attribute);
}
 
源代码5 项目: Concurnas   文件: ModuleResolutionAttribute.java
@Override
protected Attribute read(
    final ClassReader classReader,
    final int offset,
    final int length,
    final char[] charBuffer,
    final int codeOffset,
    final Label[] labels) {
  return new ModuleResolutionAttribute(classReader.readUnsignedShort(offset));
}
 
源代码6 项目: Concurnas   文件: ModuleTargetAttribute.java
@Override
protected Attribute read(
    final ClassReader classReader,
    final int offset,
    final int length,
    final char[] charBuffer,
    final int codeOffset,
    final Label[] labels) {
  return new ModuleTargetAttribute(classReader.readUTF8(offset, charBuffer));
}
 
源代码7 项目: Concurnas   文件: ModuleHashesAttribute.java
@Override
protected Attribute read(
    final ClassReader classReader,
    final int offset,
    final int length,
    final char[] charBuffer,
    final int codeAttributeOffset,
    final Label[] labels) {
  int currentOffset = offset;

  String hashAlgorithm = classReader.readUTF8(currentOffset, charBuffer);
  currentOffset += 2;

  int numModules = classReader.readUnsignedShort(currentOffset);
  currentOffset += 2;

  ArrayList<String> moduleList = new ArrayList<>(numModules);
  ArrayList<byte[]> hashList = new ArrayList<>(numModules);

  for (int i = 0; i < numModules; ++i) {
    String module = classReader.readModule(currentOffset, charBuffer);
    currentOffset += 2;
    moduleList.add(module);

    int hashLength = classReader.readUnsignedShort(currentOffset);
    currentOffset += 2;
    byte[] hash = new byte[hashLength];
    for (int j = 0; j < hashLength; ++j) {
      hash[j] = (byte) (classReader.readByte(currentOffset) & 0xFF);
      currentOffset += 1;
    }
    hashList.add(hash);
  }
  return new ModuleHashesAttribute(hashAlgorithm, moduleList, hashList);
}
 
源代码8 项目: Concurnas   文件: ClassRemapper.java
@Override
public void visitAttribute(final Attribute attribute) {
  if (attribute instanceof ModuleHashesAttribute) {
    ModuleHashesAttribute moduleHashesAttribute = (ModuleHashesAttribute) attribute;
    List<String> modules = moduleHashesAttribute.modules;
    for (int i = 0; i < modules.size(); ++i) {
      modules.set(i, remapper.mapModuleName(modules.get(i)));
    }
  }
  super.visitAttribute(attribute);
}
 
源代码9 项目: Concurnas   文件: CheckFieldAdapter.java
@Override
public void visitAttribute(final Attribute attribute) {
  checkVisitEndNotCalled();
  if (attribute == null) {
    throw new IllegalArgumentException("Invalid attribute (must not be null)");
  }
  super.visitAttribute(attribute);
}
 
源代码10 项目: Concurnas   文件: ASMifier.java
/**
 * Visit a class, field or method attribute.
 *
 * @param attribute an attribute.
 */
public void visitAttribute(final Attribute attribute) {
  stringBuilder.setLength(0);
  stringBuilder.append("// ATTRIBUTE ").append(attribute.type).append('\n');
  if (attribute instanceof ASMifierSupport) {
    if (labelNames == null) {
      labelNames = new HashMap<>();
    }
    stringBuilder.append("{\n");
    ((ASMifierSupport) attribute).asmify(stringBuilder, "attribute", labelNames);
    stringBuilder.append(name).append(".visitAttribute(attribute);\n");
    stringBuilder.append("}\n");
  }
  text.add(stringBuilder.toString());
}
 
源代码11 项目: Concurnas   文件: CheckClassAdapter.java
@Override
public void visitAttribute(final Attribute attribute) {
  checkState();
  if (attribute == null) {
    throw new IllegalArgumentException("Invalid attribute (must not be null)");
  }
  super.visitAttribute(attribute);
}
 
源代码12 项目: Concurnas   文件: CheckMethodAdapter.java
@Override
public void visitAttribute(final Attribute attribute) {
  checkVisitEndNotCalled();
  if (attribute == null) {
    throw new IllegalArgumentException("Invalid attribute (must not be null)");
  }
  super.visitAttribute(attribute);
}
 
源代码13 项目: maple-ir   文件: ASMPrinter.java
public void emitNodeAttributes(List<Attribute> attrs) {
    for (int i = 0; i < attrs.size(); i++) {
        Attribute attr = attrs.get(i);

        if (i < (attrs.size() - 1)) {
            Attribute next = attrs.get(i + 1);
        }
    }

    this.emitDirective("attrs", attrs);
}
 
源代码14 项目: JByteMod-Beta   文件: ModuleResolutionAttribute.java
@Override
protected Attribute read(
    final ClassReader classReader,
    final int offset,
    final int length,
    final char[] charBuffer,
    final int codeOffset,
    final Label[] labels) {
  return new ModuleResolutionAttribute(classReader.readUnsignedShort(offset));
}
 
源代码15 项目: JByteMod-Beta   文件: ModuleTargetAttribute.java
@Override
protected Attribute read(
    final ClassReader classReader,
    final int offset,
    final int length,
    final char[] charBuffer,
    final int codeOffset,
    final Label[] labels) {
  return new ModuleTargetAttribute(classReader.readUTF8(offset, charBuffer));
}
 
源代码16 项目: JByteMod-Beta   文件: ModuleHashesAttribute.java
@Override
protected Attribute read(
    final ClassReader classReader,
    final int offset,
    final int length,
    final char[] charBuffer,
    final int codeAttributeOffset,
    final Label[] labels) {
  int currentOffset = offset;

  String hashAlgorithm = classReader.readUTF8(currentOffset, charBuffer);
  currentOffset += 2;

  int numModules = classReader.readUnsignedShort(currentOffset);
  currentOffset += 2;

  ArrayList<String> moduleList = new ArrayList<String>(numModules);
  ArrayList<byte[]> hashList = new ArrayList<byte[]>(numModules);

  for (int i = 0; i < numModules; ++i) {
    String module = classReader.readModule(currentOffset, charBuffer);
    currentOffset += 2;
    moduleList.add(module);

    int hashLength = classReader.readUnsignedShort(currentOffset);
    currentOffset += 2;
    byte[] hash = new byte[hashLength];
    for (int j = 0; j < hashLength; ++j) {
      hash[j] = (byte) (classReader.readByte(currentOffset) & 0xFF);
      currentOffset += 1;
    }
    hashList.add(hash);
  }
  return new ModuleHashesAttribute(hashAlgorithm, moduleList, hashList);
}
 
源代码17 项目: JByteMod-Beta   文件: ClassRemapper.java
@Override
public void visitAttribute(final Attribute attribute) {
  if (attribute instanceof ModuleHashesAttribute) {
    ModuleHashesAttribute moduleHashesAttribute = (ModuleHashesAttribute) attribute;
    List<String> modules = moduleHashesAttribute.modules;
    for (int i = 0; i < modules.size(); ++i) {
      modules.set(i, remapper.mapModuleName(modules.get(i)));
    }
  }
  super.visitAttribute(attribute);
}
 
源代码18 项目: JByteMod-Beta   文件: FieldNode.java
@Override
public void visitAttribute(final Attribute attr) {
  if (attrs == null) {
    attrs = new ArrayList<Attribute>(1);
  }
  attrs.add(attr);
}
 
源代码19 项目: JByteMod-Beta   文件: ClassNode.java
@Override
public void visitAttribute(final Attribute attr) {
  if (attrs == null) {
    attrs = new ArrayList<Attribute>(1);
  }
  attrs.add(attr);
}
 
源代码20 项目: JByteMod-Beta   文件: MethodNode.java
@Override
public void visitAttribute(final Attribute attr) {
  if (attrs == null) {
    attrs = new ArrayList<Attribute>(1);
  }
  attrs.add(attr);
}
 
源代码21 项目: JByteMod-Beta   文件: CheckFieldAdapter.java
@Override
public void visitAttribute(final Attribute attr) {
  checkEnd();
  if (attr == null) {
    throw new IllegalArgumentException("Invalid attribute (must not be null)");
  }
  super.visitAttribute(attr);
}
 
源代码22 项目: JByteMod-Beta   文件: ASMifier.java
public void visitAttribute(final Attribute attr) {
  buf.setLength(0);
  buf.append("// ATTRIBUTE ").append(attr.type).append('\n');
  if (attr instanceof ASMifiable) {
    if (labelNames == null) {
      labelNames = new HashMap<Label, String>();
    }
    buf.append("{\n");
    ((ASMifiable) attr).asmify(buf, "attr", labelNames);
    buf.append(name).append(".visitAttribute(attr);\n");
    buf.append("}\n");
  }
  text.add(buf.toString());
}
 
源代码23 项目: JByteMod-Beta   文件: CheckClassAdapter.java
@Override
public void visitAttribute(final Attribute attr) {
  checkState();
  if (attr == null) {
    throw new IllegalArgumentException("Invalid attribute (must not be null)");
  }
  super.visitAttribute(attr);
}
 
源代码24 项目: JByteMod-Beta   文件: Textifier.java
@Override
public void visitMethodAttribute(final Attribute attr) {
  buf.setLength(0);
  buf.append(tab).append("ATTRIBUTE ");
  appendDescriptor(-1, attr.type);

  if (attr instanceof Textifiable) {
    ((Textifiable) attr).textify(buf, labelNames);
  } else {
    buf.append(" : unknown\n");
  }

  text.add(buf.toString());
}
 
源代码25 项目: JByteMod-Beta   文件: Textifier.java
/**
 * Prints a disassembled view of the given attribute.
 *
 * @param attr
 *          an attribute.
 */
public void visitAttribute(final Attribute attr) {
  buf.setLength(0);
  buf.append(tab).append("ATTRIBUTE ");
  appendDescriptor(-1, attr.type);

  if (attr instanceof Textifiable) {
    ((Textifiable) attr).textify(buf, null);
  } else {
    buf.append(" : unknown\n");
  }

  text.add(buf.toString());
}
 
源代码26 项目: JByteMod-Beta   文件: CheckMethodAdapter.java
@Override
public void visitAttribute(final Attribute attr) {
  checkEndMethod();
  if (attr == null) {
    throw new IllegalArgumentException("Invalid attribute (must not be null)");
  }
  super.visitAttribute(attr);
}
 
源代码27 项目: MRouter   文件: CodeScanClassVisitor.java
@Override
public void visitAttribute(Attribute attribute) {
    for (IHandler handler : handlers) {
        handler.visitAttribute(attribute);
    }
    super.visitAttribute(attribute);
}
 
源代码28 项目: Bats   文件: CheckClassVisitorFsm.java
@Override
public void visitAttribute(final Attribute attr) {
  fsmCursor.transition("visitAttribute");
  super.visitAttribute(attr);
}
 
源代码29 项目: Bats   文件: CheckMethodVisitorFsm.java
@Override
public void visitAttribute(final Attribute attr) {
  fsmCursor.transition("visitAttribute");
  super.visitAttribute(attr);
}
 
源代码30 项目: yGuard   文件: ModelVisitor.java
public void visitAttribute( final Attribute attr ) {
}
 
 类所在包
 同包方法