本文整理了Java中com.android.dx.rop.annotation.Annotation
类的一些代码示例,展示了Annotation
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Annotation
类的具体详情如下:
包路径:com.android.dx.rop.annotation.Annotation
类名称:Annotation
[英]An annotation on an element of a class. Annotations have an associated type and additionally consist of a set of (name, value) pairs, where the names are unique.
[中]类元素上的注释。注释具有关联的类型,另外还包含一组(名称、值)对,其中名称是唯一的。
代码示例来源:origin: com.jakewharton.android.repackaged/dalvik-dx
/**
* Constructs a standard {@code SourceDebugExtension} annotation.
*
* @param smapString {@code non-null;} the SMAP string associated with
* @return {@code non-null;} the annotation
*/
public static Annotation makeSourceDebugExtension(CstString smapString) {
Annotation result = new Annotation(SOURCE_DEBUG_EXTENSION_TYPE, SYSTEM);
result.put(new NameValuePair(VALUE_STRING, smapString));
result.setImmutable();
return result;
}
代码示例来源:origin: linkedin/dexmaker
Annotation annotation = new Annotation(cstType, AnnotationVisibility.RUNTIME);
annotation.add(nvp);
代码示例来源:origin: com.google.android.tools/dx
/** {@inheritDoc} */
@Override
protected int compareTo0(OffsettedItem other) {
AnnotationItem otherAnnotation = (AnnotationItem) other;
return annotation.compareTo(otherAnnotation.annotation);
}
代码示例来源:origin: com.google.android.tools/dx
int sz = methods.size();
Annotation result =
new Annotation(thisClass, AnnotationVisibility.EMBEDDED);
boolean any = false;
one.getNat().getName(),
oneDefault.getValue());
result.add(pair);
any = true;
result.setImmutable();
return AnnotationUtils.makeAnnotationDefault(result);
代码示例来源:origin: com.jakewharton.android.repackaged/dalvik-dx
/**
* Write a (listing file) annotation for this instance to the given
* output, that consumes no bytes of output. This is for annotating
* a reference to this instance at the point of the reference.
*
* @param out {@code non-null;} where to output to
* @param prefix {@code non-null;} prefix for each line of output
*/
public void annotateTo(AnnotatedOutput out, String prefix) {
out.annotate(0, prefix + "visibility: " +
annotation.getVisibility().toHuman());
out.annotate(0, prefix + "type: " + annotation.getType().toHuman());
for (NameValuePair pair : annotation.getNameValuePairs()) {
CstString name = pair.getName();
Constant value = pair.getValue();
out.annotate(0, prefix + name.toHuman() + ": " +
ValueEncoder.constantToHuman(value));
}
}
代码示例来源:origin: gdpancheng/LoonAndroid3
/**
* Helper for {@code addContents()} methods, which adds
* contents for a particular {@link Annotation}, calling itself
* recursively should it encounter a nested annotation.
*
* @param file {@code non-null;} the file to add to
* @param annotation {@code non-null;} the annotation to add contents for
*/
public static void addContents(DexFile file, Annotation annotation) {
TypeIdsSection typeIds = file.getTypeIds();
StringIdsSection stringIds = file.getStringIds();
typeIds.intern(annotation.getType());
for (NameValuePair pair : annotation.getNameValuePairs()) {
stringIds.intern(pair.getName());
addContents(file, pair.getValue());
}
}
代码示例来源:origin: nikita36078/J2ME-Loader
/** {@inheritDoc} */
@Override
public int hashCode() {
return annotation.hashCode();
}
代码示例来源:origin: nikita36078/J2ME-Loader
/** {@inheritDoc} */
@Override
public boolean equals(Object other) {
if (! (other instanceof CstAnnotation)) {
return false;
}
return annotation.equals(((CstAnnotation) other).annotation);
}
代码示例来源:origin: com.google.dexmaker/dexmaker-dx
/** {@inheritDoc} */
public void addContents(DexFile file) {
type = file.getTypeIds().intern(annotation.getType());
ValueEncoder.addContents(file, annotation);
}
代码示例来源:origin: com.android/dx
protected void writeTo0(DexFile file, AnnotatedOutput out) {
boolean annotates = out.annotates();
AnnotationVisibility visibility = annotation.getVisibility();
代码示例来源:origin: com.android/dx
int sz = methods.size();
Annotation result =
new Annotation(thisClass, AnnotationVisibility.EMBEDDED);
boolean any = false;
one.getNat().getName(),
oneDefault.getValue());
result.add(pair);
any = true;
result.setImmutable();
return AnnotationUtils.makeAnnotationDefault(result);
代码示例来源:origin: com.google.android.tools/dx
/**
* Write a (listing file) annotation for this instance to the given
* output, that consumes no bytes of output. This is for annotating
* a reference to this instance at the point of the reference.
*
* @param out {@code non-null;} where to output to
* @param prefix {@code non-null;} prefix for each line of output
*/
public void annotateTo(AnnotatedOutput out, String prefix) {
out.annotate(0, prefix + "visibility: " +
annotation.getVisibility().toHuman());
out.annotate(0, prefix + "type: " + annotation.getType().toHuman());
for (NameValuePair pair : annotation.getNameValuePairs()) {
CstString name = pair.getName();
Constant value = pair.getValue();
out.annotate(0, prefix + name.toHuman() + ": " +
ValueEncoder.constantToHuman(value));
}
}
代码示例来源:origin: nikita36078/J2ME-Loader
/**
* Helper for {@code addContents()} methods, which adds
* contents for a particular {@link Annotation}, calling itself
* recursively should it encounter a nested annotation.
*
* @param file {@code non-null;} the file to add to
* @param annotation {@code non-null;} the annotation to add contents for
*/
public static void addContents(DexFile file, Annotation annotation) {
TypeIdsSection typeIds = file.getTypeIds();
StringIdsSection stringIds = file.getStringIds();
typeIds.intern(annotation.getType());
for (NameValuePair pair : annotation.getNameValuePairs()) {
stringIds.intern(pair.getName());
addContents(file, pair.getValue());
}
}
代码示例来源:origin: com.google.android.tools/dx
/** {@inheritDoc} */
@Override
public int hashCode() {
return annotation.hashCode();
}
代码示例来源:origin: com.google.android.tools/dx
/** {@inheritDoc} */
@Override
public boolean equals(Object other) {
if (! (other instanceof CstAnnotation)) {
return false;
}
return annotation.equals(((CstAnnotation) other).annotation);
}
代码示例来源:origin: nikita36078/J2ME-Loader
/** {@inheritDoc} */
@Override
public void addContents(DexFile file) {
type = file.getTypeIds().intern(annotation.getType());
ValueEncoder.addContents(file, annotation);
}
代码示例来源:origin: nikita36078/J2ME-Loader
protected void writeTo0(DexFile file, AnnotatedOutput out) {
boolean annotates = out.annotates();
AnnotationVisibility visibility = annotation.getVisibility();
代码示例来源:origin: dragome/dragome-sdk
/**
* Constructs a standard {@code EnclosingMethod} annotation.
*
* @param method {@code non-null;} the enclosing method
* @return {@code non-null;} the annotation
*/
public static Annotation makeEnclosingMethod(CstMethodRef method) {
Annotation result = new Annotation(ENCLOSING_METHOD_TYPE, SYSTEM);
result.put(new NameValuePair(VALUE_UTF, method));
result.setImmutable();
return result;
}
代码示例来源:origin: nikita36078/J2ME-Loader
int sz = methods.size();
Annotation result =
new Annotation(thisClass, AnnotationVisibility.EMBEDDED);
boolean any = false;
one.getNat().getName(),
oneDefault.getValue());
result.add(pair);
any = true;
result.setImmutable();
return AnnotationUtils.makeAnnotationDefault(result);
代码示例来源:origin: com.android/dx
/**
* Write a (listing file) annotation for this instance to the given
* output, that consumes no bytes of output. This is for annotating
* a reference to this instance at the point of the reference.
*
* @param out {@code non-null;} where to output to
* @param prefix {@code non-null;} prefix for each line of output
*/
public void annotateTo(AnnotatedOutput out, String prefix) {
out.annotate(0, prefix + "visibility: " +
annotation.getVisibility().toHuman());
out.annotate(0, prefix + "type: " + annotation.getType().toHuman());
for (NameValuePair pair : annotation.getNameValuePairs()) {
CstString name = pair.getName();
Constant value = pair.getValue();
out.annotate(0, prefix + name.toHuman() + ": " +
ValueEncoder.constantToHuman(value));
}
}
内容来源于网络,如有侵权,请联系作者删除!