store_consts.h

Go to the documentation of this file.
00001 /*
00002  * Copyright 2006-2008 The FLWOR Foundation.
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  * 
00008  * http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 #ifndef ZORBA_STORE_STORE_CONSTS_H
00017 #define ZORBA_STORE_STORE_CONSTS_H
00018 
00019 #include <string>
00020 
00021 namespace zorba { namespace store {
00022 
00023 class StoreConsts
00024 {
00025  public:
00026 
00027   enum NodeKind
00028   {
00029     anyNode,
00030     documentNode,
00031     elementNode,
00032     attributeNode,
00033     textNode,
00034     piNode,
00035     commentNode
00036   };
00037 
00038   enum NsScoping 
00039   {
00040     ALL_NAMESPACES,
00041     ONLY_LOCAL_NAMESPACES,
00042     ONLY_PARENT_NAMESPACES
00043   };
00044 
00045   static std::string toString(NodeKind k)
00046   {
00047     switch(k) {
00048       case anyNode:
00049         return "anyNode";
00050 
00051       case documentNode:
00052         return "documentNode";
00053 
00054       case elementNode:
00055         return "elementNode";
00056 
00057       case attributeNode:
00058         return "attributeNode";
00059 
00060       case textNode:
00061         return "textNode";
00062 
00063       case piNode:
00064         return "piNode";
00065 
00066       case commentNode:
00067         return "commentNode";
00068 
00069       default:
00070         return "<unknown NodeKind>";
00071     }
00072   }
00073 };
00074 
00075 } // namespace store
00076 } // namespace zorba
00077 #endif