69 lines
1.7 KiB
Java
69 lines
1.7 KiB
Java
/*
|
|
* Decompiled with CFR 0.152.
|
|
*/
|
|
package com.tridium.asm;
|
|
|
|
import com.tridium.asm.Assembler;
|
|
import com.tridium.asm.AttributeInfo;
|
|
import com.tridium.asm.Buffer;
|
|
import com.tridium.asm.ConstantPool;
|
|
import java.util.ArrayList;
|
|
|
|
public abstract class MemberInfo {
|
|
public final Assembler asm;
|
|
public final ConstantPool cp;
|
|
public final int name;
|
|
public final int type;
|
|
public final int accessFlags;
|
|
ArrayList attributes;
|
|
|
|
public void addAttribute(AttributeInfo attributeInfo) {
|
|
if (this.attributes == null) {
|
|
this.attributes = new ArrayList(5);
|
|
}
|
|
this.attributes.add(attributeInfo);
|
|
}
|
|
|
|
void compile(Buffer buffer) {
|
|
int n = 0;
|
|
if (this.attributes != null) {
|
|
n = this.attributes.size();
|
|
}
|
|
int n2 = n;
|
|
buffer.u2(this.accessFlags);
|
|
buffer.u2(this.name);
|
|
buffer.u2(this.type);
|
|
buffer.u2(n2);
|
|
int n3 = 0;
|
|
while (n3 < n2) {
|
|
((AttributeInfo)this.attributes.get(n3)).compile(buffer);
|
|
++n3;
|
|
}
|
|
}
|
|
|
|
MemberInfo(Assembler assembler, int n, int n2, int n3) {
|
|
this.asm = assembler;
|
|
this.cp = assembler.cp;
|
|
this.name = n;
|
|
this.type = n2;
|
|
this.accessFlags = n3;
|
|
}
|
|
|
|
MemberInfo(Assembler assembler, String string, String string2, int n) {
|
|
this.asm = assembler;
|
|
this.cp = assembler.cp;
|
|
this.name = this.cp.utf(string);
|
|
this.type = this.cp.utf(string2);
|
|
this.accessFlags = n;
|
|
}
|
|
|
|
MemberInfo(Assembler assembler, int n, String string, int n2) {
|
|
this.asm = assembler;
|
|
this.cp = assembler.cp;
|
|
this.name = n;
|
|
this.type = this.cp.utf(string);
|
|
this.accessFlags = n2;
|
|
}
|
|
}
|
|
|