Class UnknownExpression

  • All Implemented Interfaces:
    Expression

    public final class UnknownExpression
    extends AbstractExpression
    This expression contains a portion of the query that is unknown to the parser. This can happen when the query is malformed or incomplete.
    Version:
    2.5
    Author:
    Pascal Filion
    Since:
    2.3
    • Constructor Detail

      • UnknownExpression

        public UnknownExpression​(AbstractExpression parent,
                                 java.lang.String text)
        Creates a new UnknownExpression.
        Parameters:
        parent - The parent of this expression
        text - The text to be stored in this expression
    • Method Detail

      • getText

        public java.lang.String getText()
        Returns the encapsulated text of this AbstractExpression, which can be used in various ways, it can be a keyword, a literal, etc.
        Overrides:
        getText in class AbstractExpression
        Returns:
        Either the JPQL identifier for this AbstractExpression, the literal it encapsulates or an empty string
      • isUnknown

        protected boolean isUnknown()
        Determines whether this expression is an unknown Expression or any other subclass.
        Overrides:
        isUnknown in class AbstractExpression
        Returns:
        false by default
      • parse

        protected void parse​(WordParser wordParser,
                             boolean tolerant)
        Parses the query by starting at the current position, which is part of the given WordParser.
        Specified by:
        parse in class AbstractExpression
        Parameters:
        wordParser - The text to parse based on the current position of the cursor
        tolerant - Determines whether the parsing system should be tolerant, meaning if it should try to parse invalid or incomplete queries
      • toParsedText

        protected void toParsedText​(java.lang.StringBuilder writer,
                                    boolean actual)
        Generates a string representation of this Expression, including its children, if it has any.
        Specified by:
        toParsedText in class AbstractExpression
        Parameters:
        writer - The buffer used to append this Expression's string representation
        actual - Determines whether the string representation should represent what was parsed, i.e. include any "virtual" whitespace (such as ending whitespace) and the actual case of the JPQL identifiers