1 // Copyright (c) 2009 The Chromium Embedded Framework Authors. All rights
2 // reserved. Use of this source code is governed by a BSD-style license that
3 // can be found in the LICENSE file.
4
5 #include "libcef_dll/transfer_util.h"
6
transfer_string_list_contents(cef_string_list_t fromList,StringList & toList)7 void transfer_string_list_contents(cef_string_list_t fromList,
8 StringList& toList) {
9 size_t size = cef_string_list_size(fromList);
10 CefString value;
11
12 for (size_t i = 0; i < size; i++) {
13 cef_string_list_value(fromList, i, value.GetWritableStruct());
14 toList.push_back(value);
15 }
16 }
17
transfer_string_list_contents(const StringList & fromList,cef_string_list_t toList)18 void transfer_string_list_contents(const StringList& fromList,
19 cef_string_list_t toList) {
20 size_t size = fromList.size();
21 for (size_t i = 0; i < size; ++i)
22 cef_string_list_append(toList, fromList[i].GetStruct());
23 }
24
transfer_string_map_contents(cef_string_map_t fromMap,StringMap & toMap)25 void transfer_string_map_contents(cef_string_map_t fromMap, StringMap& toMap) {
26 size_t size = cef_string_map_size(fromMap);
27 CefString key, value;
28
29 for (size_t i = 0; i < size; ++i) {
30 cef_string_map_key(fromMap, i, key.GetWritableStruct());
31 cef_string_map_value(fromMap, i, value.GetWritableStruct());
32
33 toMap.insert(std::make_pair(key, value));
34 }
35 }
36
transfer_string_map_contents(const StringMap & fromMap,cef_string_map_t toMap)37 void transfer_string_map_contents(const StringMap& fromMap,
38 cef_string_map_t toMap) {
39 StringMap::const_iterator it = fromMap.begin();
40 for (; it != fromMap.end(); ++it)
41 cef_string_map_append(toMap, it->first.GetStruct(), it->second.GetStruct());
42 }
43
transfer_string_multimap_contents(cef_string_multimap_t fromMap,StringMultimap & toMap)44 void transfer_string_multimap_contents(cef_string_multimap_t fromMap,
45 StringMultimap& toMap) {
46 size_t size = cef_string_multimap_size(fromMap);
47 CefString key, value;
48
49 for (size_t i = 0; i < size; ++i) {
50 cef_string_multimap_key(fromMap, i, key.GetWritableStruct());
51 cef_string_multimap_value(fromMap, i, value.GetWritableStruct());
52
53 toMap.insert(std::make_pair(key, value));
54 }
55 }
56
transfer_string_multimap_contents(const StringMultimap & fromMap,cef_string_multimap_t toMap)57 void transfer_string_multimap_contents(const StringMultimap& fromMap,
58 cef_string_multimap_t toMap) {
59 StringMultimap::const_iterator it = fromMap.begin();
60 for (; it != fromMap.end(); ++it) {
61 cef_string_multimap_append(toMap, it->first.GetStruct(),
62 it->second.GetStruct());
63 }
64 }
65