Class ResultVariable

  • All Implemented Interfaces:

    public final class ResultVariable
    extends AbstractExpression
    A result variable may be used to name a select item in the query result.
    BNF: select_item ::= select_expression [[AS] result_variable]

    Pascal Filion
    • Constructor Detail

      • ResultVariable

        public ResultVariable​(AbstractExpression parent,
                              AbstractExpression selectExpression)
        Creates a new ResultVariable.
        parent - The parent of this expression
        selectExpression - The expression that represents the select expression, which will have a variable assigned to it
    • Method Detail

      • getActualAsIdentifier

        public String getActualAsIdentifier()
        Returns the actual AS found in the string representation of the JPQL query, which has the actual case that was used.
        The AS identifier that was actually parsed, or an empty string if it was not parsed
      • getResultVariable

        public Expression getResultVariable()
        Returns the Expression representing the result variable.
        The expression for the result variable
      • getSelectExpression

        public Expression getSelectExpression()
        Returns the Expression representing the select expression.
        The expression for the select expression
      • hasAs

        public boolean hasAs()
        Determines whether the identifier AS was parsed or not.
        true if the identifier AS was parsed; false otherwise
      • hasResultVariable

        public boolean hasResultVariable()
        Determines whether the result variable was parsed.
        true if the result variable was parsed; false otherwise
      • hasSelectExpression

        public boolean hasSelectExpression()
        Determines whether a select expression was defined for this result variable.
        true if the select expression was parsed; false if the result variable was parsed without one
      • hasSpaceAfterAs

        public boolean hasSpaceAfterAs()
        Determines whether a whitespace was parsed after the identifier AS.
        true if there was a whitespace after AS; false otherwise
      • parse

        protected void parse​(WordParser wordParser,
                             boolean tolerant)
        Description copied from class: AbstractExpression
        Parses the query by starting at the current position, which is part of the given WordParser.
        Specified by:
        parse in class AbstractExpression
        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​(StringBuilder writer,
                                    boolean actual)
        Description copied from class: AbstractExpression
        Generates a string representation of this Expression, including its children, if it has any.
        Specified by:
        toParsedText in class AbstractExpression
        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