/* * Copyright (c) 2006-2011 Rogério Liesenfeld * This file is subject to the terms of the MIT license (see LICENSE.txt). */ package mockit.emulation.hibernate3.ast.whereClause; import mockit.emulation.hibernate3.ast.*; abstract class PrimaryExpr extends Expr { // TODO: identPrimary "." "class" public static Expr parse(Tokens tokens) { int startingPos = tokens.getPosition(); Expr expr = PositionalParameterExpr.parse(tokens); if (expr != null) return expr; tokens.setPosition(startingPos); expr = NamedParameterExpr.parse(tokens); if (expr != null) return expr; tokens.setPosition(startingPos); expr = ConstantExpr.parse(tokens); if (expr != null) return expr; tokens.setPosition(startingPos); expr = FunctionCallExpr.parse(tokens); if (expr != null) return expr; tokens.setPosition(startingPos); expr = AccessPathExpr.parse(tokens); if (expr != null) return expr; tokens.setPosition(startingPos); expr = ParenthesizedExpr.parse(tokens); if (expr != null) return expr; tokens.setPosition(startingPos); return null; } }