Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(203)

Side by Side Diff: content/browser/indexed_db/indexed_db_metadata.h

Issue 933823002: Avoid large inlined automatic methods in IndexedDB code. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_ 5 #ifndef CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_
6 #define CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_ 6 #define CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_
7 7
8 #include <map> 8 #include <map>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/strings/string16.h" 11 #include "base/strings/string16.h"
12 #include "content/common/indexed_db/indexed_db_key_path.h" 12 #include "content/common/indexed_db/indexed_db_key_path.h"
13 13
14 namespace content { 14 namespace content {
15 15
16 struct IndexedDBIndexMetadata { 16 struct IndexedDBIndexMetadata {
17 static const int64 kInvalidId = -1; 17 static const int64 kInvalidId = -1;
18 18
19 IndexedDBIndexMetadata() {} 19 IndexedDBIndexMetadata();
20 IndexedDBIndexMetadata(const base::string16& name, 20 IndexedDBIndexMetadata(const base::string16& name,
21 int64 id, 21 int64 id,
22 const IndexedDBKeyPath& key_path, 22 const IndexedDBKeyPath& key_path,
23 bool unique, 23 bool unique,
24 bool multi_entry) 24 bool multi_entry);
25 : name(name), 25 IndexedDBIndexMetadata(const IndexedDBIndexMetadata& other);
26 id(id), 26 ~IndexedDBIndexMetadata();
cmumford 2015/02/17 16:34:50 Now that these functions can't be inlined you need
Daniel Bratell 2015/02/18 13:55:45 Done.
27 key_path(key_path), 27 IndexedDBIndexMetadata& operator=(const IndexedDBIndexMetadata& other);
28 unique(unique), 28
29 multi_entry(multi_entry) {}
30 base::string16 name; 29 base::string16 name;
31 int64 id; 30 int64 id;
32 IndexedDBKeyPath key_path; 31 IndexedDBKeyPath key_path;
33 bool unique; 32 bool unique;
34 bool multi_entry; 33 bool multi_entry;
35 }; 34 };
36 35
37 struct CONTENT_EXPORT IndexedDBObjectStoreMetadata { 36 struct CONTENT_EXPORT IndexedDBObjectStoreMetadata {
38 typedef std::map<int64, IndexedDBIndexMetadata> IndexMap; 37 typedef std::map<int64, IndexedDBIndexMetadata> IndexMap;
39 38
40 static const int64 kInvalidId = -1; 39 static const int64 kInvalidId = -1;
41 40
42 IndexedDBObjectStoreMetadata(); 41 IndexedDBObjectStoreMetadata();
43 IndexedDBObjectStoreMetadata(const base::string16& name, 42 IndexedDBObjectStoreMetadata(const base::string16& name,
44 int64 id, 43 int64 id,
45 const IndexedDBKeyPath& key_path, 44 const IndexedDBKeyPath& key_path,
46 bool auto_increment, 45 bool auto_increment,
47 int64 max_index_id); 46 int64 max_index_id);
47 IndexedDBObjectStoreMetadata(const IndexedDBObjectStoreMetadata& other);
48 ~IndexedDBObjectStoreMetadata(); 48 ~IndexedDBObjectStoreMetadata();
49 IndexedDBObjectStoreMetadata& operator=(
50 const IndexedDBObjectStoreMetadata& other);
51
49 base::string16 name; 52 base::string16 name;
50 int64 id; 53 int64 id;
51 IndexedDBKeyPath key_path; 54 IndexedDBKeyPath key_path;
52 bool auto_increment; 55 bool auto_increment;
53 int64 max_index_id; 56 int64 max_index_id;
54 57
55 IndexMap indexes; 58 IndexMap indexes;
56 }; 59 };
57 60
58 struct CONTENT_EXPORT IndexedDBDatabaseMetadata { 61 struct CONTENT_EXPORT IndexedDBDatabaseMetadata {
59 // TODO(jsbell): These can probably be collapsed into 0. 62 // TODO(jsbell): These can probably be collapsed into 0.
60 enum { 63 enum {
61 NO_INT_VERSION = -1, 64 NO_INT_VERSION = -1,
62 DEFAULT_INT_VERSION = 0 65 DEFAULT_INT_VERSION = 0
63 }; 66 };
64 67
65 typedef std::map<int64, IndexedDBObjectStoreMetadata> ObjectStoreMap; 68 typedef std::map<int64, IndexedDBObjectStoreMetadata> ObjectStoreMap;
66 69
67 IndexedDBDatabaseMetadata(); 70 IndexedDBDatabaseMetadata();
68 IndexedDBDatabaseMetadata(const base::string16& name, 71 IndexedDBDatabaseMetadata(const base::string16& name,
69 int64 id, 72 int64 id,
70 const base::string16& version, 73 const base::string16& version,
71 int64 int_version, 74 int64 int_version,
72 int64 max_object_store_id); 75 int64 max_object_store_id);
76 IndexedDBDatabaseMetadata(const IndexedDBDatabaseMetadata& other);
73 ~IndexedDBDatabaseMetadata(); 77 ~IndexedDBDatabaseMetadata();
78 IndexedDBDatabaseMetadata& operator=(IndexedDBDatabaseMetadata& other);
74 79
75 base::string16 name; 80 base::string16 name;
76 int64 id; 81 int64 id;
77 base::string16 version; 82 base::string16 version;
78 int64 int_version; 83 int64 int_version;
79 int64 max_object_store_id; 84 int64 max_object_store_id;
80 85
81 ObjectStoreMap object_stores; 86 ObjectStoreMap object_stores;
82 }; 87 };
83 } // namespace content 88 } // namespace content
84 89
85 #endif // CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_ 90 #endif // CONTENT_BROWSER_INDEXED_DB_INDEXED_DB_METADATA_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698