Imported Upstream version 1.0.0
[platform/upstream/iotivity.git] / service / simulator / ramlparser / raml / jsonSchemaParser / Helpers.h
1 /******************************************************************\r
2  *\r
3  * Copyright 2015 Samsung Electronics All Rights Reserved.\r
4  *\r
5  *\r
6  *\r
7  * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * you may not use this file except in compliance with the License.\r
9  * You may obtain a copy of the License at\r
10  *\r
11  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  *\r
13  * Unless required by applicable law or agreed to in writing, software\r
14  * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * See the License for the specific language governing permissions and\r
17  * limitations under the License.\r
18  *\r
19  ******************************************************************/\r
20 \r
21 /**\r
22  * @file   Helpers.h\r
23  *\r
24  * @brief   This file provides helper definitions for Json Schema parser.\r
25  */\r
26 \r
27 #ifndef HELPERS_H_\r
28 #define HELPERS_H_\r
29 \r
30 #include <string>\r
31 #include <vector>\r
32 #include <map>\r
33 #include <boost/variant.hpp>\r
34 #include <boost/lexical_cast.hpp>\r
35 \r
36 namespace RAML\r
37 {\r
38 \r
39     /** ValueVariant - Boost Variant to hold type of int, string, double and bool*/\r
40     typedef boost::variant <\r
41     int,\r
42     double,\r
43     bool,\r
44     std::string\r
45     > ValueVariant;\r
46 \r
47     /** VariantType - enumeration for variant types*/\r
48     enum class VariantType\r
49     {\r
50         INT, DOUBLE, BOOL, STRING\r
51     };\r
52 \r
53 \r
54 }\r
55 #endif\r