slcom/slangc/codegraph/DynamicContainer.sauce

32 lines
833 B
Plaintext

package slangc.codegraph;
public abstract class DynamicContainer extends DynamicNamedElement implements AbstractContainer {
private DynamicNamedElement[] elements = new DynamicNamedElement[0];
public DynamicContainer() {
// TODO Auto-generated constructor stub
}
public int countNamedElements() {
return elements.length;
}
public DynamicNamedElement getNamedElement(int index) {
if (index < 0 || index > elements.length) {
return null;
} else {
return elements[index];
}
}
public void appendNamedElement(DynamicNamedElement e) {
DynamicNamedElement[] nelem = new DynamicNamedElement[elements.length + 1];
for (int i = 0; i < elements.length; i++) {
nelem[i] = elements[i];
}
nelem[nelem.length - 1] = e;
elements = nelem;
e.setEnclosingContainer(this);
}
}