
eu.mihosoft.vmf.vmftext.grammar.ReadOnlyRuleClass Maven / Gradle / Ivy
package eu.mihosoft.vmf.vmftext.grammar;
// vmf imports
// import eu.mihosoft.vmf.runtime.core.*;
import eu.mihosoft.vcollections.*;
// property types imports
// interface
/**
* An read-only representation of the model object {@code eu.mihosoft.vmf.vmftext.grammar.RuleClass}.
*
*
*
*
*/
public interface ReadOnlyRuleClass extends eu.mihosoft.vmf.runtime.core.VObject, ReadOnlyWithName,ReadOnlyCodeElement, eu.mihosoft.vmf.runtime.core.ReadOnly {
/**
* Returns the value of the 'childClasses' containment list.
*
* It is bidirectional and its opposite is '{@link ReadOnlyRuleClass#getSuperClass() superClass}'.
*
*
*
*
* @return the value of the 'childClasses' containment list.
*/
// generic model type
public VList getChildClasses();
/**
* Returns the value of the 'customProperties' containment list.
*
* It is bidirectional and its opposite is '{@link ReadOnlyProperty#getParent() parent}'.
*
*
*
*
* @return the value of the 'customProperties' containment list.
*/
// generic model type
public VList getCustomProperties();
/**
* Returns the value of the 'customRuleAnnotations' containment list.
*
* It is bidirectional and its opposite is '{@link ReadOnlyRuleAnnotation#getParent() parent}'.
*
*
*
*
* @return the value of the 'customRuleAnnotations' containment list.
*/
// generic model type
public VList getCustomRuleAnnotations();
/**
* Returns the value of the 'delegationMethods' containment list.
*
* It is bidirectional and its opposite is '{@link ReadOnlyDelegationMethod#getParent() parent}'.
*
*
*
*
* @return the value of the 'delegationMethods' containment list.
*/
// generic model type
public VList getDelegationMethods();
/**
* Returns the value of the 'model' containment reference.
*
* It is bidirectional and its opposite is '{@link ReadOnlyGrammarModel#getRuleClasses() ruleClasses}'.
*
*
*
*
* @return the value of the 'model' containment reference.
* @see RuleClass#\setModel(eu.mihosoft.vmf.vmftext.grammar.GrammarModel)
*/
public ReadOnlyGrammarModel getModel();
/**
* Returns the value of the 'properties' containment list.
*
* It is bidirectional and its opposite is '{@link ReadOnlyProperty#getParent() parent}'.
*
*
*
*
* @return the value of the 'properties' containment list.
*/
// generic model type
public VList getProperties();
/**
* Returns the value of the 'root' property.
*
*
*
*
* @return the value of the 'root' property.
* @see RuleClass#\setRoot(boolean)
*/
public boolean isRoot();
/**
* Returns the value of the 'superClass' container reference.
*
* It is bidirectional and its opposite is '{@link ReadOnlyRuleClass#getChildClasses() childClasses}'.
*
*
*
*
* @return the value of the 'superClass' container reference.
* @see RuleClass#\setSuperClass(eu.mihosoft.vmf.vmftext.grammar.RuleClass)
*/
public ReadOnlyRuleClass getSuperClass();
/**
* Returns the value of the 'superInterfaces' property.
*
*
*
*
* @return the value of the 'superInterfaces' property.
* */
public VList getSuperInterfaces();
/**
* Returns a deep clone of this object.
* @return a deep clone of this object
*/
@Override
public ReadOnlyRuleClass clone();
@Override
default ReadOnlyRuleClass asReadOnly() {
return this;
}
/**
* Returns a modifiable deep clone of this object.
* @return a modifiable deep clone of this object
*/
RuleClass asModifiable();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy