package de.fuberlin.projectF.CodeGenerator.model; public class ArrayPointer extends Reference{ Array array; int value; RegisterAddress address; public ArrayPointer(String name, Array arr, int value, RegisterAddress address) { super(name, arr.getType(), 4); this.address = address; this.array = arr; this.value = value; } public ArrayPointer(String name, ArrayPointer lastPtr, int value) { super(name, lastPtr.type, 4); this.address = lastPtr.address; this.array = lastPtr.array; this.value = value; } @Override public String getAddress() { return " " + address.getFullName(); } public RegisterAddress getRegAddress() { return this.address; } public String getPtrAddress() { return address.getFullName(); } public Array getArray(){ return this.array; } public int getValue(){ return this.value; } @Override public String getAddress(int offset) { return " " + address.getFullName(); } public boolean onStack(){ return array.onStack(); } }