OLD | NEW |
1 // Copyright (c) 2011 The LevelDB Authors. All rights reserved. | 1 // Copyright (c) 2011 The LevelDB 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. See the AUTHORS file for names of contributors. | 3 // found in the LICENSE file. See the AUTHORS file for names of contributors. |
4 // | 4 // |
5 // See port_example.h for documentation for the following types/functions. | 5 // See port_example.h for documentation for the following types/functions. |
6 | 6 |
7 #ifndef STORAGE_LEVELDB_PORT_PORT_CHROMIUM_H_ | 7 #ifndef STORAGE_LEVELDB_PORT_PORT_CHROMIUM_H_ |
8 #define STORAGE_LEVELDB_PORT_PORT_CHROMIUM_H_ | 8 #define STORAGE_LEVELDB_PORT_PORT_CHROMIUM_H_ |
9 | 9 |
10 #include <stdint.h> | 10 #include <stdint.h> |
11 #include <string> | 11 #include <string> |
12 #include <cstring> | 12 #include <cstring> |
13 #include "base/atomicops.h" | 13 #include "base/atomicops.h" |
14 #include "base/basictypes.h" | 14 #include "base/basictypes.h" |
15 #include "base/synchronization/condition_variable.h" | 15 #include "base/synchronization/condition_variable.h" |
16 #include "base/synchronization/lock.h" | 16 #include "base/synchronization/lock.h" |
17 | 17 |
18 // Linux's ThreadIdentifier() needs this. | 18 // Linux's ThreadIdentifier() needs this. |
19 #if defined(OS_LINUX) | 19 #if defined(OS_LINUX) |
20 # include <linux/unistd.h> | 20 # include <linux/unistd.h> |
21 #endif | 21 #endif |
22 | 22 |
23 #if defined(OS_WIN) | 23 #if defined(OS_WIN) |
24 #define snprintf _snprintf | 24 #define snprintf _snprintf |
25 typedef SSIZE_T ssize_t; | 25 typedef SSIZE_T ssize_t; |
26 #if !defined(__clang__) && _MSC_VER <= 1700 | |
27 # define va_copy(a, b) do { (a) = (b); } while (0) | |
28 #endif | |
29 #endif | 26 #endif |
30 | 27 |
31 namespace leveldb { | 28 namespace leveldb { |
32 namespace port { | 29 namespace port { |
33 | 30 |
34 // Chromium only supports little endian. | 31 // Chromium only supports little endian. |
35 static const bool kLittleEndian = true; | 32 static const bool kLittleEndian = true; |
36 | 33 |
37 class Mutex { | 34 class Mutex { |
38 public: | 35 public: |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
112 char* output); | 109 char* output); |
113 | 110 |
114 inline bool GetHeapProfile(void (*func)(void*, const char*, int), void* arg) { | 111 inline bool GetHeapProfile(void (*func)(void*, const char*, int), void* arg) { |
115 return false; | 112 return false; |
116 } | 113 } |
117 | 114 |
118 } | 115 } |
119 } | 116 } |
120 | 117 |
121 #endif // STORAGE_LEVELDB_PORT_PORT_CHROMIUM_H_ | 118 #endif // STORAGE_LEVELDB_PORT_PORT_CHROMIUM_H_ |
OLD | NEW |