All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eu.mihosoft.vmf.vmftext.grammar.ReadOnlyUPElement Maven / Gradle / Ivy

The newest version!

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.UPElement}.
 *
 * 
 * 
 *
 */
public interface ReadOnlyUPElement extends eu.mihosoft.vmf.runtime.core.VObject, ReadOnlyWithText, eu.mihosoft.vmf.runtime.core.ReadOnly {

  /**
  * Returns the value of the 'lexerRule' property.
  *
  * 
  * 
  *
  * @return the value of the 'lexerRule' property.
  * @see UPElement#\setLexerRule(boolean)
  */
   public boolean isLexerRule();
 

  /**
  * Returns the value of the 'listType' property.
  *
  * 
  * 
  *
  * @return the value of the 'listType' property.
  * @see UPElement#\setListType(boolean)
  */
   public boolean isListType();
 

  /**
  * Returns the value of the 'negated' property.
  *
  * 
  * 
  *
  * @return the value of the 'negated' property.
  * @see UPElement#\setNegated(boolean)
  */
   public boolean isNegated();
 

/**
 * Returns the value of the 'parentAlt' container reference.
 *
 * It is bidirectional and its opposite is '{@link ReadOnlyAlternativeBase#getElements() elements}'.
 *
 * 
 * 
 *
 * @return the value of the 'parentAlt' container reference.
 * @see UPElement#\setParentAlt(eu.mihosoft.vmf.vmftext.grammar.AlternativeBase)
 */
   public ReadOnlyAlternativeBase getParentAlt();
 

  /**
  * Returns the value of the 'parserRule' property.
  *
  * 
  * 
  *
  * @return the value of the 'parserRule' property.
  * @see UPElement#\setParserRule(boolean)
  */
   public boolean isParserRule();
 

  /**
  * Returns the value of the 'ruleName' property.
  *
  * 
  * 
  *
  * @return the value of the 'ruleName' property.
  * @see UPElement#\setRuleName(java.lang.String)
  */
   public java.lang.String getRuleName();
 

  /**
  * Returns the value of the 'terminal' property.
  *
  * 
  * 
  *
  * @return the value of the 'terminal' property.
  * @see UPElement#\setTerminal(boolean)
  */
   public boolean isTerminal();
 
 
 /**
  * Returns a deep clone of this object.
  * @return a deep clone of this object
  */
  @Override
  public ReadOnlyUPElement clone();

  @Override
  default ReadOnlyUPElement asReadOnly() {
    return this;
  }

  /**
   * Returns a modifiable deep clone of this object.
   * @return a modifiable deep clone of this object
   */
  UPElement asModifiable();

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy