| | +package com.whitemagicsoftware.rxm.tree.xml; |
| | + |
| | +import com.whitemagicsoftware.rxm.grammar.QueryParser; |
| | +import com.whitemagicsoftware.rxm.tree.Payload; |
| | +import com.whitemagicsoftware.rxm.tree.Token; |
| | +import com.whitemagicsoftware.rxm.tree.Tree; |
| | + |
| | +import org.antlr.v4.runtime.ParserRuleContext; |
| | + |
| | +/** |
| | + * Transforms a where <b>rxm</b> expression into a SQL <code>WHERE</code> |
| | + * expression. |
| | + */ |
| | +public class WhereContext extends PayloadParserRuleContext { |
| | + /** |
| | + * Default constructor (calls super). |
| | + * |
| | + * @param ctx The payload that associates the parser rule context with |
| | + * the abstract syntax tree. |
| | + */ |
| | + public WhereContext( Payload ctx ) { |
| | + super( ctx ); |
| | + } |
| | + |
| | + /** |
| | + * Returns the starting text for an OUTER JOIN clause. |
| | + */ |
| | + @Override |
| | + public Token getStart() { |
| | + QueryParser.ExpressionContext expression = expression(); |
| | + |
| | + return new Token( expression.getText() ); |
| | + } |
| | + |
| | + /** |
| | + * Returns the ending text for an OUTER JOIN clause. |
| | + */ |
| | + @Override |
| | + public Token getStop() { |
| | + return new Token( "" ); |
| | + } |
| | + |
| | + private QueryParser.ExpressionContext expression() { |
| | + return ((QueryParser.WhereContext)getParserRuleContext()).expression(); |
| | + } |
| | +} |
| | + |
| | |