Files
MY_COMPILER/midend/llvm/use/IrUser.java
2025-12-10 17:58:17 +08:00

39 lines
762 B
Java

package midend.llvm.use;
import java.util.ArrayList;
import midend.llvm.value.IrValue;
import midend.llvm.type.IrType;
public class IrUser extends IrValue {
private ArrayList<IrValue> uses;
public IrUser(IrType type, String name) {
super(type, name);
this.uses = new ArrayList<>();
}
public ArrayList<IrValue> getUses() {
return uses;
}
public void addUse(IrValue value) {
if (value == null) {
return;
}
uses.add(value);
value.addUser(this);
}
public IrValue getUse(int index) {
if (index >= uses.size()) {
return null;
}
return uses.get(index);
}
public int getNumUses() {
return uses.size();
}
}