cdc.mf.model.MfInheritance Maven / Gradle / Ivy
The newest version!
package cdc.mf.model;
public abstract class MfInheritance extends MfLink {
protected MfInheritance(Builder, ?, ? extends MfType> builder,
MfElementFeatures features) {
super(builder, features);
}
public MfType getSpecificType() {
return getSource();
}
public abstract MfElementRef extends MfType> getGeneralTypeRef();
public MfType getGeneralType() {
return getGeneralTypeRef().get();
}
@Override
public MfType getTarget() {
return getGeneralType();
}
@Override
public final MfElementRef extends MfType> getTargetRef() {
return getGeneralTypeRef();
}
/**
* Base builder of inheritances.
*
* @author Damien Carbonne
*
* @param The builder type.
* @param The built element type.
* @param The concrete parent type.
*/
public abstract static class Builder,
E extends MfInheritance,
P extends MfType>
extends MfLink.Builder {
protected Builder(P parent) {
super(parent);
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy