Go to the documentation of this file.00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 final class OqlHavingParser extends OqlParser
00013 {
00014 const CLASS_NAME = 'HavingProjection';
00015
00019 public static function create()
00020 {
00021 return new self;
00022 }
00023
00027 protected function makeOqlObject()
00028 {
00029 return OqlHavingClause::create();
00030 }
00031
00032 protected function handleState()
00033 {
00034 if ($this->state == self::INITIAL_STATE) {
00035 if ($argument = $this->getLogicExpression()) {
00036 $this->oqlObject->setExpression(
00037 $this->makeQueryExpression(self::CLASS_NAME, $argument)
00038 );
00039
00040 } else
00041 $this->error("expecting 'having' expression");
00042 }
00043
00044 return self::FINAL_STATE;
00045 }
00046 }
00047 ?>