package fr.imag.adele.apam.declarations;
import fr.imag.adele.apam.declarations.references.Reference;
import fr.imag.adele.apam.declarations.references.components.ComponentReference;
/**
* A reference to a feature of a component declaration.
*
* Notice that we use the component as a name space, then feature identifiers must be
* only unique in the context of their defining component declaration.
*
* @author vega
*
*/
public abstract class FeatureReference extends Reference {
private final String identifier;
protected FeatureReference(ComponentReference<?> definingComponent, String identifier) {
super(definingComponent);
this.identifier = identifier;
}
public ComponentReference<?> getDeclaringComponent() {
return (ComponentReference<?>) namespace;
}
@Override
public String getIdentifier() {
return identifier;
}
}