本文整理汇总了Java中org.objectweb.asm.attrs.StackMapType类的典型用法代码示例。如果您正苦于以下问题:Java StackMapType类的具体用法?Java StackMapType怎么用?Java StackMapType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
StackMapType类属于org.objectweb.asm.attrs包,在下文中一共展示了StackMapType类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: traceTypeInfo
import org.objectweb.asm.attrs.StackMapType; //导入依赖的package包/类
private void traceTypeInfo(StringBuffer buf, Map labelNames, List infos) {
String sep = "";
for (int i = 0; i < infos.size(); i++) {
StackMapType t = (StackMapType) infos.get(i);
buf.append(sep).append(StackMapType.ITEM_NAMES[t.getType()]);
sep = ", ";
if (t.getType() == StackMapType.ITEM_Object) {
buf.append(":").append(t.getObject());
}
if (t.getType() == StackMapType.ITEM_Uninitialized) {
buf.append(":");
appendLabel(buf, labelNames, t.getLabel());
}
}
}
开发者ID:vilie,项目名称:javify,代码行数:17,代码来源:ASMStackMapTableAttribute.java
示例2: asmifyTypeInfo
import org.objectweb.asm.attrs.StackMapType; //导入依赖的package包/类
void asmifyTypeInfo(
StringBuffer buf,
String varName,
Map labelNames,
List infos,
String field)
{
if (infos.size() == 0) {
buf.append("List ")
.append(field)
.append(" = Collections.EMPTY_LIST;\n");
} else {
buf.append("List ").append(field).append(" = new ArrayList();\n");
buf.append("{\n");
for (int i = 0; i < infos.size(); i++) {
StackMapType typeInfo = (StackMapType) infos.get(i);
String localName = varName + "Info" + i;
int type = typeInfo.getType();
buf.append("StackMapType ")
.append(localName)
.append(" = StackMapType.getTypeInfo( StackMapType.ITEM_")
.append(StackMapType.ITEM_NAMES[type])
.append(");\n");
switch (type) {
case StackMapType.ITEM_Object: //
buf.append(localName)
.append(".setObject(\"")
.append(typeInfo.getObject())
.append("\");\n");
break;
case StackMapType.ITEM_Uninitialized: //
declareLabel(buf, labelNames, typeInfo.getLabel());
buf.append(localName)
.append(".setLabel(")
.append(labelNames.get(typeInfo.getLabel()))
.append(");\n");
break;
}
buf.append(field)
.append(".add(")
.append(localName)
.append(");\n");
}
buf.append("}\n");
}
}
开发者ID:vilie,项目名称:javify,代码行数:49,代码来源:ASMStackMapTableAttribute.java
示例3: asmifyTypeInfo
import org.objectweb.asm.attrs.StackMapType; //导入依赖的package包/类
void asmifyTypeInfo(
StringBuffer buf,
String varName,
Map labelNames,
List infos,
String field)
{
if (infos.size() > 0) {
buf.append("{\n");
for (int i = 0; i < infos.size(); i++) {
StackMapType typeInfo = (StackMapType) infos.get(i);
String localName = varName + "Info" + i;
int type = typeInfo.getType();
buf.append("StackMapType ")
.append(localName)
.append(" = StackMapType.getTypeInfo( StackMapType.ITEM_")
.append(StackMapType.ITEM_NAMES[type])
.append(");\n");
switch (type) {
case StackMapType.ITEM_Object: //
buf.append(localName)
.append(".setObject(\"")
.append(typeInfo.getObject())
.append("\");\n");
break;
case StackMapType.ITEM_Uninitialized: //
declareLabel(buf, labelNames, typeInfo.getLabel());
buf.append(localName)
.append(".setLabel(")
.append(labelNames.get(typeInfo.getLabel()))
.append(");\n");
break;
}
buf.append(varName)
.append(".")
.append(field)
.append(".add(")
.append(localName)
.append(");\n");
}
buf.append("}\n");
}
}
开发者ID:vilie,项目名称:javify,代码行数:46,代码来源:ASMStackMapAttribute.java
注:本文中的org.objectweb.asm.attrs.StackMapType类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论