1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one
3  * or more contributor license agreements. See the NOTICE file
4  * distributed with this work for additional information
5  * regarding copyright ownership. The ASF licenses this file
6  * to you under the Apache License, Version 2.0 (the
7  * "License"); you may not use this file except in compliance
8  * with the License. You may obtain a copy of the License at
9  *
10  *   http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15  * KIND, either express or implied. See the License for the
16  * specific language governing permissions and limitations
17  * under the License.
18  */
19 
20 #ifndef T_MAP_H
21 #define T_MAP_H
22 
23 #include "thrift/parse/t_container.h"
24 
25 /**
26  * A map is a lightweight container type that just wraps another two data
27  * types.
28  *
29  */
30 class t_map : public t_container {
31 public:
t_map(t_type * key_type,t_type * val_type)32   t_map(t_type* key_type, t_type* val_type) : key_type_(key_type), val_type_(val_type) {}
33 
get_key_type()34   t_type* get_key_type() const { return key_type_; }
35 
get_val_type()36   t_type* get_val_type() const { return val_type_; }
37 
is_map()38   bool is_map() const { return true; }
39 
40 private:
41   t_type* key_type_;
42   t_type* val_type_;
43 };
44 
45 #endif
46