OW_WQLSelectStatementGen.hpp

Go to the documentation of this file.
00001 /*******************************************************************************
00002 * Copyright (C) 2001-2004 Vintela, Inc. All rights reserved.
00003 *
00004 * Redistribution and use in source and binary forms, with or without
00005 * modification, are permitted provided that the following conditions are met:
00006 *
00007 *  - Redistributions of source code must retain the above copyright notice,
00008 *    this list of conditions and the following disclaimer.
00009 *
00010 *  - Redistributions in binary form must reproduce the above copyright notice,
00011 *    this list of conditions and the following disclaimer in the documentation
00012 *    and/or other materials provided with the distribution.
00013 *
00014 *  - Neither the name of Vintela, Inc. nor the names of its
00015 *    contributors may be used to endorse or promote products derived from this
00016 *    software without specific prior written permission.
00017 *
00018 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS''
00019 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00020 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00021 * ARE DISCLAIMED. IN NO EVENT SHALL Vintela, Inc. OR THE CONTRIBUTORS
00022 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
00023 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
00024 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
00025 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
00026 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
00027 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00028 * POSSIBILITY OF SUCH DAMAGE.
00029 *******************************************************************************/
00030 
00035 #ifndef OW_WQL_SELECT_STATEMENT_GEN_HPP_INCLUDE_GUARD_
00036 #define OW_WQL_SELECT_STATEMENT_GEN_HPP_INCLUDE_GUARD_
00037 #include "OW_config.h"
00038 #include "OW_WQLVisitor.hpp"
00039 #include "OW_WQLSelectStatement.hpp"
00040 
00041 // The classes and functions defined in this file are not meant for general
00042 // use, they are internal implementation details.  They may change at any time.
00043 
00044 namespace OW_NAMESPACE
00045 {
00046 
00047 class OW_WQL_API WQLSelectStatementGen : public WQLVisitor
00048 {
00049 public:
00050    WQLSelectStatementGen();
00051    virtual ~WQLSelectStatementGen();
00052    virtual void visit_stmt_selectStmt_optSemicolon(
00053       const stmt_selectStmt_optSemicolon* pstmt_selectStmt_optSemicolon
00054       );
00055    virtual void visit_stmt_updateStmt_optSemicolon(
00056       const stmt_updateStmt_optSemicolon* pstmt_updateStmt_optSemicolon
00057       );
00058    virtual void visit_stmt_insertStmt_optSemicolon(
00059       const stmt_insertStmt_optSemicolon* pstmt_insertStmt_optSemicolon
00060       );
00061    virtual void visit_stmt_deleteStmt_optSemicolon(
00062       const stmt_deleteStmt_optSemicolon* pstmt_deleteStmt_optSemicolon
00063       );
00064    virtual void visit_optSemicolon_empty(
00065       const optSemicolon_empty* poptSemicolon_empty
00066       );
00067    virtual void visit_optSemicolon_SEMICOLON(
00068       const optSemicolon_SEMICOLON* poptSemicolon_SEMICOLON
00069       );
00070    virtual void visit_insertStmt(
00071       const insertStmt* pinsertStmt
00072       );
00073    virtual void visit_insertRest_VALUES_LEFTPAREN_targetList_RIGHTPAREN(
00074       const insertRest_VALUES_LEFTPAREN_targetList_RIGHTPAREN* pinsertRest_VALUES_LEFTPAREN_targetList_RIGHTPAREN
00075       );
00076    virtual void visit_insertRest_DEFAULT_VALUES(
00077       const insertRest_DEFAULT_VALUES* pinsertRest_DEFAULT_VALUES
00078       );
00079    virtual void visit_insertRest_LEFTPAREN_columnList_RIGHTPAREN_VALUES_LEFTPAREN_targetList_RIGHTPAREN(
00080       const insertRest_LEFTPAREN_columnList_RIGHTPAREN_VALUES_LEFTPAREN_targetList_RIGHTPAREN* pinsertRest_LEFTPAREN_columnList_RIGHTPAREN_VALUES_LEFTPAREN_targetList_RIGHTPAREN
00081       );
00082    virtual void visit_deleteStmt(
00083       const deleteStmt* pdeleteStmt
00084       );
00085    virtual void visit_updateStmt(
00086       const updateStmt* pupdateStmt
00087       );
00088    virtual void visit_selectStmt(
00089       const selectStmt* pselectStmt
00090       );
00091    virtual void visit_exprSeq_aExpr(
00092       const exprSeq_aExpr* pexprSeq_aExpr
00093       );
00094    virtual void visit_exprSeq_exprSeq_COMMA_aExpr(
00095       const exprSeq_exprSeq_COMMA_aExpr* pexprSeq_exprSeq_COMMA_aExpr
00096       );
00097    virtual void visit_exprSeq_exprSeq_USING_aExpr(
00098       const exprSeq_exprSeq_USING_aExpr* pexprSeq_exprSeq_USING_aExpr
00099       );
00100    virtual void visit_optDistinct_empty(
00101       const optDistinct_empty* poptDistinct_empty
00102       );
00103    virtual void visit_optDistinct_DISTINCT(
00104       const optDistinct_DISTINCT* poptDistinct_DISTINCT
00105       );
00106    virtual void visit_optDistinct_DISTINCT_ON_LEFTPAREN_exprSeq_RIGHTPAREN(
00107       const optDistinct_DISTINCT_ON_LEFTPAREN_exprSeq_RIGHTPAREN* poptDistinct_DISTINCT_ON_LEFTPAREN_exprSeq_RIGHTPAREN
00108       );
00109    virtual void visit_optDistinct_ALL(
00110       const optDistinct_ALL* poptDistinct_ALL
00111       );
00112    virtual void visit_sortClause(
00113       const sortClause* psortClause
00114       );
00115    virtual void visit_optSortClause_empty(
00116       const optSortClause_empty* poptSortClause_empty
00117       );
00118    virtual void visit_optSortClause_sortClause(
00119       const optSortClause_sortClause* poptSortClause_sortClause
00120       );
00121    virtual void visit_sortby(
00122       const sortby* psortby
00123       );
00124    virtual void visit_optGroupClause_empty(
00125       const optGroupClause_empty* poptGroupClause_empty
00126       );
00127    virtual void visit_optGroupClause_GROUP_BY_exprSeq(
00128       const optGroupClause_GROUP_BY_exprSeq* poptGroupClause_GROUP_BY_exprSeq
00129       );
00130    virtual void visit_optHavingClause_empty(
00131       const optHavingClause_empty* poptHavingClause_empty
00132       );
00133    virtual void visit_optHavingClause_HAVING_aExpr(
00134       const optHavingClause_HAVING_aExpr* poptHavingClause_HAVING_aExpr
00135       );
00136    virtual void visit_optFromClause_empty(
00137       const optFromClause_empty* poptFromClause_empty
00138       );
00139    virtual void visit_optFromClause_FROM_fromList(
00140       const optFromClause_FROM_fromList* poptFromClause_FROM_fromList
00141       );
00142    virtual void visit_tableRef_relationExpr(
00143       const tableRef_relationExpr* ptableRef_relationExpr
00144       );
00145    virtual void visit_tableRef_relationExpr_aliasClause(
00146       const tableRef_relationExpr_aliasClause* ptableRef_relationExpr_aliasClause
00147       );
00148    virtual void visit_tableRef_joinedTable(
00149       const tableRef_joinedTable* ptableRef_joinedTable
00150       );
00151    virtual void visit_tableRef_LEFTPAREN_joinedTable_RIGHTPAREN_aliasClause(
00152       const tableRef_LEFTPAREN_joinedTable_RIGHTPAREN_aliasClause* ptableRef_LEFTPAREN_joinedTable_RIGHTPAREN_aliasClause
00153       );
00154    virtual void visit_joinedTable_LEFTPAREN_joinedTable_RIGHTPAREN(
00155       const joinedTable_LEFTPAREN_joinedTable_RIGHTPAREN* pjoinedTable_LEFTPAREN_joinedTable_RIGHTPAREN
00156       );
00157    virtual void visit_joinedTable_tableRef_CROSS_JOIN_tableRef(
00158       const joinedTable_tableRef_CROSS_JOIN_tableRef* pjoinedTable_tableRef_CROSS_JOIN_tableRef
00159       );
00160    virtual void visit_joinedTable_tableRef_UNIONJOIN_tableRef(
00161       const joinedTable_tableRef_UNIONJOIN_tableRef* pjoinedTable_tableRef_UNIONJOIN_tableRef
00162       );
00163    virtual void visit_joinedTable_tableRef_joinType_JOIN_tableRef_joinQual(
00164       const joinedTable_tableRef_joinType_JOIN_tableRef_joinQual* pjoinedTable_tableRef_joinType_JOIN_tableRef_joinQual
00165       );
00166    virtual void visit_joinedTable_tableRef_JOIN_tableRef_joinQual(
00167       const joinedTable_tableRef_JOIN_tableRef_joinQual* pjoinedTable_tableRef_JOIN_tableRef_joinQual
00168       );
00169    virtual void visit_joinedTable_tableRef_NATURAL_joinType_JOIN_tableRef(
00170       const joinedTable_tableRef_NATURAL_joinType_JOIN_tableRef* pjoinedTable_tableRef_NATURAL_joinType_JOIN_tableRef
00171       );
00172    virtual void visit_joinedTable_tableRef_NATURAL_JOIN_tableRef(
00173       const joinedTable_tableRef_NATURAL_JOIN_tableRef* pjoinedTable_tableRef_NATURAL_JOIN_tableRef
00174       );
00175    virtual void visit_aliasClause_AS_strColId_LEFTPAREN_nameList_RIGHTPAREN(
00176       const aliasClause_AS_strColId_LEFTPAREN_nameList_RIGHTPAREN* paliasClause_AS_strColId_LEFTPAREN_nameList_RIGHTPAREN
00177       );
00178    virtual void visit_aliasClause_AS_strColId(
00179       const aliasClause_AS_strColId* paliasClause_AS_strColId
00180       );
00181    virtual void visit_aliasClause_strColId_LEFTPAREN_nameList_RIGHTPAREN(
00182       const aliasClause_strColId_LEFTPAREN_nameList_RIGHTPAREN* paliasClause_strColId_LEFTPAREN_nameList_RIGHTPAREN
00183       );
00184    virtual void visit_aliasClause_strColId(
00185       const aliasClause_strColId* paliasClause_strColId
00186       );
00187    virtual void visit_joinType_FULL_strOptJoinOuter(
00188       const joinType_FULL_strOptJoinOuter* pjoinType_FULL_strOptJoinOuter
00189       );
00190    virtual void visit_joinType_LEFT_strOptJoinOuter(
00191       const joinType_LEFT_strOptJoinOuter* pjoinType_LEFT_strOptJoinOuter
00192       );
00193    virtual void visit_joinType_RIGHT_strOptJoinOuter(
00194       const joinType_RIGHT_strOptJoinOuter* pjoinType_RIGHT_strOptJoinOuter
00195       );
00196    virtual void visit_joinType_INNERP(
00197       const joinType_INNERP* pjoinType_INNERP
00198       );
00199    virtual void visit_joinQual_USING_LEFTPAREN_nameList_RIGHTPAREN(
00200       const joinQual_USING_LEFTPAREN_nameList_RIGHTPAREN* pjoinQual_USING_LEFTPAREN_nameList_RIGHTPAREN
00201       );
00202    virtual void visit_joinQual_ON_aExpr(
00203       const joinQual_ON_aExpr* pjoinQual_ON_aExpr
00204       );
00205    virtual void visit_relationExpr_strRelationName(
00206       const relationExpr_strRelationName* prelationExpr_strRelationName
00207       );
00208    virtual void visit_relationExpr_strRelationName_ASTERISK(
00209       const relationExpr_strRelationName_ASTERISK* prelationExpr_strRelationName_ASTERISK
00210       );
00211    virtual void visit_relationExpr_ONLY_strRelationName(
00212       const relationExpr_ONLY_strRelationName* prelationExpr_ONLY_strRelationName
00213       );
00214    virtual void visit_optWhereClause_empty(
00215       const optWhereClause_empty* poptWhereClause_empty
00216       );
00217    virtual void visit_optWhereClause_WHERE_aExpr(
00218       const optWhereClause_WHERE_aExpr* poptWhereClause_WHERE_aExpr
00219       );
00220    virtual void visit_rowExpr(
00221       const rowExpr* prowExpr
00222       );
00223    virtual void visit_rowDescriptor(
00224       const rowDescriptor* prowDescriptor
00225       );
00226    virtual void visit_aExpr_cExpr(
00227       const aExpr_cExpr* paExpr_cExpr
00228       );
00229    virtual void visit_aExpr_aExpr_AT_TIME_ZONE_cExpr(
00230       const aExpr_aExpr_AT_TIME_ZONE_cExpr* paExpr_aExpr_AT_TIME_ZONE_cExpr
00231       );
00232    virtual void visit_aExpr_PLUS_aExpr(
00233       const aExpr_PLUS_aExpr* paExpr_PLUS_aExpr
00234       );
00235    virtual void visit_aExpr_MINUS_aExpr(
00236       const aExpr_MINUS_aExpr* paExpr_MINUS_aExpr
00237       );
00238    virtual void visit_aExpr_BITINVERT_aExpr(
00239       const aExpr_BITINVERT_aExpr* paExpr_BITINVERT_aExpr
00240       );
00241    virtual void visit_aExpr_aExpr_PLUS_aExpr(
00242       const aExpr_aExpr_PLUS_aExpr* paExpr_aExpr_PLUS_aExpr
00243       );
00244    virtual void visit_aExpr_aExpr_MINUS_aExpr(
00245       const aExpr_aExpr_MINUS_aExpr* paExpr_aExpr_MINUS_aExpr
00246       );
00247    virtual void visit_aExpr_aExpr_ASTERISK_aExpr(
00248       const aExpr_aExpr_ASTERISK_aExpr* paExpr_aExpr_ASTERISK_aExpr
00249       );
00250    virtual void visit_aExpr_aExpr_SOLIDUS_aExpr(
00251       const aExpr_aExpr_SOLIDUS_aExpr* paExpr_aExpr_SOLIDUS_aExpr
00252       );
00253    virtual void visit_aExpr_aExpr_PERCENT_aExpr(
00254       const aExpr_aExpr_PERCENT_aExpr* paExpr_aExpr_PERCENT_aExpr
00255       );
00256    virtual void visit_aExpr_aExpr_BITAND_aExpr(
00257       const aExpr_aExpr_BITAND_aExpr* paExpr_aExpr_BITAND_aExpr
00258       );
00259    virtual void visit_aExpr_aExpr_BITOR_aExpr(
00260       const aExpr_aExpr_BITOR_aExpr* paExpr_aExpr_BITOR_aExpr
00261       );
00262    virtual void visit_aExpr_aExpr_BITSHIFTLEFT_aExpr(
00263       const aExpr_aExpr_BITSHIFTLEFT_aExpr* paExpr_aExpr_BITSHIFTLEFT_aExpr
00264       );
00265    virtual void visit_aExpr_aExpr_BITSHIFTRIGHT_aExpr(
00266       const aExpr_aExpr_BITSHIFTRIGHT_aExpr* paExpr_aExpr_BITSHIFTRIGHT_aExpr
00267       );
00268    virtual void visit_aExpr_aExpr_LESSTHAN_aExpr(
00269       const aExpr_aExpr_LESSTHAN_aExpr* paExpr_aExpr_LESSTHAN_aExpr
00270       );
00271    virtual void visit_aExpr_aExpr_LESSTHANOREQUALS_aExpr(
00272       const aExpr_aExpr_LESSTHANOREQUALS_aExpr* paExpr_aExpr_LESSTHANOREQUALS_aExpr
00273       );
00274    virtual void visit_aExpr_aExpr_GREATERTHAN_aExpr(
00275       const aExpr_aExpr_GREATERTHAN_aExpr* paExpr_aExpr_GREATERTHAN_aExpr
00276       );
00277    virtual void visit_aExpr_aExpr_GREATERTHANOREQUALS_aExpr(
00278       const aExpr_aExpr_GREATERTHANOREQUALS_aExpr* paExpr_aExpr_GREATERTHANOREQUALS_aExpr
00279       );
00280    virtual void visit_aExpr_aExpr_EQUALS_aExpr(
00281       const aExpr_aExpr_EQUALS_aExpr* paExpr_aExpr_EQUALS_aExpr
00282       );
00283    virtual void visit_aExpr_aExpr_NOTEQUALS_aExpr(
00284       const aExpr_aExpr_NOTEQUALS_aExpr* paExpr_aExpr_NOTEQUALS_aExpr
00285       );
00286    virtual void visit_aExpr_aExpr_AND_aExpr(
00287       const aExpr_aExpr_AND_aExpr* paExpr_aExpr_AND_aExpr
00288       );
00289    virtual void visit_aExpr_aExpr_OR_aExpr(
00290       const aExpr_aExpr_OR_aExpr* paExpr_aExpr_OR_aExpr
00291       );
00292    virtual void visit_aExpr_NOT_aExpr(
00293       const aExpr_NOT_aExpr* paExpr_NOT_aExpr
00294       );
00295    virtual void visit_aExpr_aExpr_CONCATENATION_aExpr(
00296       const aExpr_aExpr_CONCATENATION_aExpr* paExpr_aExpr_CONCATENATION_aExpr
00297       );
00298    virtual void visit_aExpr_aExpr_LIKE_aExpr(
00299       const aExpr_aExpr_LIKE_aExpr* paExpr_aExpr_LIKE_aExpr
00300       );
00301    virtual void visit_aExpr_aExpr_LIKE_aExpr_ESCAPE_aExpr(
00302       const aExpr_aExpr_LIKE_aExpr_ESCAPE_aExpr* paExpr_aExpr_LIKE_aExpr_ESCAPE_aExpr
00303       );
00304    virtual void visit_aExpr_aExpr_NOT_LIKE_aExpr(
00305       const aExpr_aExpr_NOT_LIKE_aExpr* paExpr_aExpr_NOT_LIKE_aExpr
00306       );
00307    virtual void visit_aExpr_aExpr_NOT_LIKE_aExpr_ESCAPE_aExpr(
00308       const aExpr_aExpr_NOT_LIKE_aExpr_ESCAPE_aExpr* paExpr_aExpr_NOT_LIKE_aExpr_ESCAPE_aExpr
00309       );
00310    virtual void visit_aExpr_aExpr_ISNULL(
00311       const aExpr_aExpr_ISNULL* paExpr_aExpr_ISNULL
00312       );
00313    virtual void visit_aExpr_aExpr_IS_NULLP(
00314       const aExpr_aExpr_IS_NULLP* paExpr_aExpr_IS_NULLP
00315       );
00316    virtual void visit_aExpr_aExpr_NOTNULL(
00317       const aExpr_aExpr_NOTNULL* paExpr_aExpr_NOTNULL
00318       );
00319    virtual void visit_aExpr_aExpr_IS_NOT_NULLP(
00320       const aExpr_aExpr_IS_NOT_NULLP* paExpr_aExpr_IS_NOT_NULLP
00321       );
00322    virtual void visit_aExpr_aExpr_IS_TRUEP(
00323       const aExpr_aExpr_IS_TRUEP* paExpr_aExpr_IS_TRUEP
00324       );
00325    virtual void visit_aExpr_aExpr_IS_NOT_FALSEP(
00326       const aExpr_aExpr_IS_NOT_FALSEP* paExpr_aExpr_IS_NOT_FALSEP
00327       );
00328    virtual void visit_aExpr_aExpr_IS_FALSEP(
00329       const aExpr_aExpr_IS_FALSEP* paExpr_aExpr_IS_FALSEP
00330       );
00331    virtual void visit_aExpr_aExpr_IS_NOT_TRUEP(
00332       const aExpr_aExpr_IS_NOT_TRUEP* paExpr_aExpr_IS_NOT_TRUEP
00333       );
00334    virtual void visit_aExpr_aExpr_ISA_aExpr(
00335       const aExpr_aExpr_ISA_aExpr* paExpr_aExpr_ISA_aExpr
00336       );
00337    
00338    virtual void visit_aExpr_rowExpr(
00339       const aExpr_rowExpr* paExpr_rowExpr
00340       );
00341    virtual void visit_bExpr_cExpr(
00342       const bExpr_cExpr* pbExpr_cExpr
00343       );
00344    virtual void visit_bExpr_PLUS_bExpr(
00345       const bExpr_PLUS_bExpr* pbExpr_PLUS_bExpr
00346       );
00347    virtual void visit_bExpr_MINUS_bExpr(
00348       const bExpr_MINUS_bExpr* pbExpr_MINUS_bExpr
00349       );
00350    virtual void visit_bExpr_BITINVERT_bExpr(
00351       const bExpr_BITINVERT_bExpr* pbExpr_BITINVERT_bExpr
00352       );
00353    virtual void visit_bExpr_bExpr_PLUS_bExpr(
00354       const bExpr_bExpr_PLUS_bExpr* pbExpr_bExpr_PLUS_bExpr
00355       );
00356    virtual void visit_bExpr_bExpr_MINUS_bExpr(
00357       const bExpr_bExpr_MINUS_bExpr* pbExpr_bExpr_MINUS_bExpr
00358       );
00359    virtual void visit_bExpr_bExpr_ASTERISK_bExpr(
00360       const bExpr_bExpr_ASTERISK_bExpr* pbExpr_bExpr_ASTERISK_bExpr
00361       );
00362    virtual void visit_bExpr_bExpr_SOLIDUS_bExpr(
00363       const bExpr_bExpr_SOLIDUS_bExpr* pbExpr_bExpr_SOLIDUS_bExpr
00364       );
00365    virtual void visit_bExpr_bExpr_PERCENT_bExpr(
00366       const bExpr_bExpr_PERCENT_bExpr* pbExpr_bExpr_PERCENT_bExpr
00367       );
00368    virtual void visit_bExpr_bExpr_BITAND_bExpr(
00369       const bExpr_bExpr_BITAND_bExpr* pbExpr_bExpr_BITAND_bExpr
00370       );
00371    virtual void visit_bExpr_bExpr_BITOR_bExpr(
00372       const bExpr_bExpr_BITOR_bExpr* pbExpr_bExpr_BITOR_bExpr
00373       );
00374    virtual void visit_bExpr_bExpr_BITSHIFTLEFT_bExpr(
00375       const bExpr_bExpr_BITSHIFTLEFT_bExpr* pbExpr_bExpr_BITSHIFTLEFT_bExpr
00376       );
00377    virtual void visit_bExpr_bExpr_BITSHIFTRIGHT_bExpr(
00378       const bExpr_bExpr_BITSHIFTRIGHT_bExpr* pbExpr_bExpr_BITSHIFTRIGHT_bExpr
00379       );
00380    virtual void visit_bExpr_bExpr_LESSTHAN_bExpr(
00381       const bExpr_bExpr_LESSTHAN_bExpr* pbExpr_bExpr_LESSTHAN_bExpr
00382       );
00383    virtual void visit_bExpr_bExpr_LESSTHANOREQUALS_bExpr(
00384       const bExpr_bExpr_LESSTHANOREQUALS_bExpr* pbExpr_bExpr_LESSTHANOREQUALS_bExpr
00385       );
00386    virtual void visit_bExpr_bExpr_GREATERTHAN_bExpr(
00387       const bExpr_bExpr_GREATERTHAN_bExpr* pbExpr_bExpr_GREATERTHAN_bExpr
00388       );
00389    virtual void visit_bExpr_bExpr_GREATERTHANOREQUALS_bExpr(
00390       const bExpr_bExpr_GREATERTHANOREQUALS_bExpr* pbExpr_bExpr_GREATERTHANOREQUALS_bExpr
00391       );
00392    virtual void visit_bExpr_bExpr_EQUALS_bExpr(
00393       const bExpr_bExpr_EQUALS_bExpr* pbExpr_bExpr_EQUALS_bExpr
00394       );
00395    virtual void visit_bExpr_bExpr_NOTEQUALS_bExpr(
00396       const bExpr_bExpr_NOTEQUALS_bExpr* pbExpr_bExpr_NOTEQUALS_bExpr
00397       );
00398    virtual void visit_bExpr_bExpr_CONCATENATION_bExpr(
00399       const bExpr_bExpr_CONCATENATION_bExpr* pbExpr_bExpr_CONCATENATION_bExpr
00400       );
00401    virtual void visit_cExpr_attr(
00402       const cExpr_attr* pcExpr_attr
00403       );
00404    virtual void visit_cExpr_strColId_optIndirection(
00405       const cExpr_strColId_optIndirection* pcExpr_strColId_optIndirection
00406       );
00407    virtual void visit_cExpr_aExprConst(
00408       const cExpr_aExprConst* pcExpr_aExprConst
00409       );
00410    virtual void visit_cExpr_LEFTPAREN_aExpr_RIGHTPAREN(
00411       const cExpr_LEFTPAREN_aExpr_RIGHTPAREN* pcExpr_LEFTPAREN_aExpr_RIGHTPAREN
00412       );
00413    virtual void visit_cExpr_strFuncName_LEFTPAREN_RIGHTPAREN(
00414       const cExpr_strFuncName_LEFTPAREN_RIGHTPAREN* pcExpr_strFuncName_LEFTPAREN_RIGHTPAREN
00415       );
00416    virtual void visit_cExpr_strFuncName_LEFTPAREN_exprSeq_RIGHTPAREN(
00417       const cExpr_strFuncName_LEFTPAREN_exprSeq_RIGHTPAREN* pcExpr_strFuncName_LEFTPAREN_exprSeq_RIGHTPAREN
00418       );
00419    virtual void visit_cExpr_strFuncName_LEFTPAREN_ALL_exprSeq_RIGHTPAREN(
00420       const cExpr_strFuncName_LEFTPAREN_ALL_exprSeq_RIGHTPAREN* pcExpr_strFuncName_LEFTPAREN_ALL_exprSeq_RIGHTPAREN
00421       );
00422    virtual void visit_cExpr_strFuncName_LEFTPAREN_DISTINCT_exprSeq_RIGHTPAREN(
00423       const cExpr_strFuncName_LEFTPAREN_DISTINCT_exprSeq_RIGHTPAREN* pcExpr_strFuncName_LEFTPAREN_DISTINCT_exprSeq_RIGHTPAREN
00424       );
00425    virtual void visit_cExpr_strFuncName_LEFTPAREN_ASTERISK_RIGHTPAREN(
00426       const cExpr_strFuncName_LEFTPAREN_ASTERISK_RIGHTPAREN* pcExpr_strFuncName_LEFTPAREN_ASTERISK_RIGHTPAREN
00427       );
00428    virtual void visit_cExpr_CURRENTDATE(
00429       const cExpr_CURRENTDATE* pcExpr_CURRENTDATE
00430       );
00431    virtual void visit_cExpr_CURRENTTIME(
00432       const cExpr_CURRENTTIME* pcExpr_CURRENTTIME
00433       );
00434    virtual void visit_cExpr_CURRENTTIME_LEFTPAREN_ICONST_RIGHTPAREN(
00435       const cExpr_CURRENTTIME_LEFTPAREN_ICONST_RIGHTPAREN* pcExpr_CURRENTTIME_LEFTPAREN_ICONST_RIGHTPAREN
00436       );
00437    virtual void visit_cExpr_CURRENTTIMESTAMP(
00438       const cExpr_CURRENTTIMESTAMP* pcExpr_CURRENTTIMESTAMP
00439       );
00440    virtual void visit_cExpr_CURRENTTIMESTAMP_LEFTPAREN_ICONST_RIGHTPAREN(
00441       const cExpr_CURRENTTIMESTAMP_LEFTPAREN_ICONST_RIGHTPAREN* pcExpr_CURRENTTIMESTAMP_LEFTPAREN_ICONST_RIGHTPAREN
00442       );
00443    virtual void visit_cExpr_CURRENTUSER(
00444       const cExpr_CURRENTUSER* pcExpr_CURRENTUSER
00445       );
00446    virtual void visit_cExpr_SESSIONUSER(
00447       const cExpr_SESSIONUSER* pcExpr_SESSIONUSER
00448       );
00449    virtual void visit_cExpr_USER(
00450       const cExpr_USER* pcExpr_USER
00451       );
00452    virtual void visit_cExpr_EXTRACT_LEFTPAREN_optExtract_RIGHTPAREN(
00453       const cExpr_EXTRACT_LEFTPAREN_optExtract_RIGHTPAREN* pcExpr_EXTRACT_LEFTPAREN_optExtract_RIGHTPAREN
00454       );
00455    virtual void visit_cExpr_POSITION_LEFTPAREN_positionExpr_RIGHTPAREN(
00456       const cExpr_POSITION_LEFTPAREN_positionExpr_RIGHTPAREN* pcExpr_POSITION_LEFTPAREN_positionExpr_RIGHTPAREN
00457       );
00458    virtual void visit_cExpr_SUBSTRING_LEFTPAREN_optSubstrExpr_RIGHTPAREN(
00459       const cExpr_SUBSTRING_LEFTPAREN_optSubstrExpr_RIGHTPAREN* pcExpr_SUBSTRING_LEFTPAREN_optSubstrExpr_RIGHTPAREN
00460       );
00461    virtual void visit_cExpr_TRIM_LEFTPAREN_LEADING_trimExpr_RIGHTPAREN(
00462       const cExpr_TRIM_LEFTPAREN_LEADING_trimExpr_RIGHTPAREN* pcExpr_TRIM_LEFTPAREN_LEADING_trimExpr_RIGHTPAREN
00463       );
00464    virtual void visit_cExpr_TRIM_LEFTPAREN_TRAILING_trimExpr_RIGHTPAREN(
00465       const cExpr_TRIM_LEFTPAREN_TRAILING_trimExpr_RIGHTPAREN* pcExpr_TRIM_LEFTPAREN_TRAILING_trimExpr_RIGHTPAREN
00466       );
00467    virtual void visit_cExpr_TRIM_LEFTPAREN_trimExpr_RIGHTPAREN(
00468       const cExpr_TRIM_LEFTPAREN_trimExpr_RIGHTPAREN* pcExpr_TRIM_LEFTPAREN_trimExpr_RIGHTPAREN
00469       );
00470    virtual void visit_optIndirection_empty(
00471       const optIndirection_empty* poptIndirection_empty
00472       );
00473    virtual void visit_optIndirection_optIndirection_LEFTBRACKET_aExpr_RIGHTBRACKET(
00474       const optIndirection_optIndirection_LEFTBRACKET_aExpr_RIGHTBRACKET* poptIndirection_optIndirection_LEFTBRACKET_aExpr_RIGHTBRACKET
00475       );
00476    virtual void visit_optIndirection_optIndirection_LEFTBRACKET_aExpr_COLON_aExpr_RIGHTBRACKET(
00477       const optIndirection_optIndirection_LEFTBRACKET_aExpr_COLON_aExpr_RIGHTBRACKET* poptIndirection_optIndirection_LEFTBRACKET_aExpr_COLON_aExpr_RIGHTBRACKET
00478       );
00479    virtual void visit_optExtract_empty(
00480       const optExtract_empty* poptExtract_empty
00481       );
00482    virtual void visit_optExtract_strExtractArg_FROM_aExpr(
00483       const optExtract_strExtractArg_FROM_aExpr* poptExtract_strExtractArg_FROM_aExpr
00484       );
00485    virtual void visit_positionExpr_bExpr_IN_bExpr(
00486       const positionExpr_bExpr_IN_bExpr* ppositionExpr_bExpr_IN_bExpr
00487       );
00488    virtual void visit_positionExpr_empty(
00489       const positionExpr_empty* ppositionExpr_empty
00490       );
00491    virtual void visit_optSubstrExpr_empty(
00492       const optSubstrExpr_empty* poptSubstrExpr_empty
00493       );
00494    virtual void visit_optSubstrExpr_aExpr_substrFrom_substrFor(
00495       const optSubstrExpr_aExpr_substrFrom_substrFor* poptSubstrExpr_aExpr_substrFrom_substrFor
00496       );
00497    virtual void visit_optSubstrExpr_aExpr_substrFor_substrFrom(
00498       const optSubstrExpr_aExpr_substrFor_substrFrom* poptSubstrExpr_aExpr_substrFor_substrFrom
00499       );
00500    virtual void visit_optSubstrExpr_aExpr_substrFrom(
00501       const optSubstrExpr_aExpr_substrFrom* poptSubstrExpr_aExpr_substrFrom
00502       );
00503    virtual void visit_optSubstrExpr_aExpr_substrFor(
00504       const optSubstrExpr_aExpr_substrFor* poptSubstrExpr_aExpr_substrFor
00505       );
00506    virtual void visit_optSubstrExpr_exprSeq(
00507       const optSubstrExpr_exprSeq* poptSubstrExpr_exprSeq
00508       );
00509    virtual void visit_substrFrom(
00510       const substrFrom* psubstrFrom
00511       );
00512    virtual void visit_substrFor(
00513       const substrFor* psubstrFor
00514       );
00515    virtual void visit_trimExpr_aExpr_FROM_exprSeq(
00516       const trimExpr_aExpr_FROM_exprSeq* ptrimExpr_aExpr_FROM_exprSeq
00517       );
00518    virtual void visit_trimExpr_FROM_exprSeq(
00519       const trimExpr_FROM_exprSeq* ptrimExpr_FROM_exprSeq
00520       );
00521    virtual void visit_trimExpr_exprSeq(
00522       const trimExpr_exprSeq* ptrimExpr_exprSeq
00523       );
00524    virtual void visit_attr(
00525       const attr* pattr
00526       );
00527    virtual void visit_attrs_strAttrName(
00528       const attrs_strAttrName* pattrs_strAttrName
00529       );
00530    virtual void visit_attrs_attrs_PERIOD_strAttrName(
00531       const attrs_attrs_PERIOD_strAttrName* pattrs_attrs_PERIOD_strAttrName
00532       );
00533    virtual void visit_attrs_attrs_PERIOD_ASTERISK(
00534       const attrs_attrs_PERIOD_ASTERISK* pattrs_attrs_PERIOD_ASTERISK
00535       );
00536    virtual void visit_targetEl_aExpr_AS_strColLabel(
00537       const targetEl_aExpr_AS_strColLabel* ptargetEl_aExpr_AS_strColLabel
00538       );
00539    virtual void visit_targetEl_aExpr(
00540       const targetEl_aExpr* ptargetEl_aExpr
00541       );
00542    virtual void visit_targetEl_strRelationName_PERIOD_ASTERISK(
00543       const targetEl_strRelationName_PERIOD_ASTERISK* ptargetEl_strRelationName_PERIOD_ASTERISK
00544       );
00545    virtual void visit_targetEl_ASTERISK(
00546       const targetEl_ASTERISK* ptargetEl_ASTERISK
00547       );
00548    virtual void visit_updateTargetEl(
00549       const updateTargetEl* pupdateTargetEl
00550       );
00551    virtual void visit_aExprConst_ICONST(
00552       const aExprConst_ICONST* paExprConst_ICONST
00553       );
00554    virtual void visit_aExprConst_FCONST(
00555       const aExprConst_FCONST* paExprConst_FCONST
00556       );
00557    virtual void visit_aExprConst_SCONST(
00558       const aExprConst_SCONST* paExprConst_SCONST
00559       );
00560    virtual void visit_aExprConst_BITCONST(
00561       const aExprConst_BITCONST* paExprConst_BITCONST
00562       );
00563    virtual void visit_aExprConst_HEXCONST(
00564       const aExprConst_HEXCONST* paExprConst_HEXCONST
00565       );
00566    virtual void visit_aExprConst_TRUEP(
00567       const aExprConst_TRUEP* paExprConst_TRUEP
00568       );
00569    virtual void visit_aExprConst_FALSEP(
00570       const aExprConst_FALSEP* paExprConst_FALSEP
00571       );
00572    virtual void visit_aExprConst_NULLP(
00573       const aExprConst_NULLP* paExprConst_NULLP
00574       );
00575    // End generated code
00576 public:
00577    WQLSelectStatement getSelectStatement() const
00578    {
00579       return m_stmt;
00580    }
00581 private:
00582    WQLSelectStatement m_stmt;
00583    bool m_isPropertyList;
00584    String m_attrName;
00585 };
00586 
00587 } // end namespace OW_NAMESPACE
00588 
00589 #endif

Generated on Thu Feb 9 08:48:18 2006 for openwbem by  doxygen 1.4.6