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

Side by Side Diff: tools/gn/target.h

Issue 612323010: Align base::hash_map with C++11. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Try a different tack for C++ insanity Created 6 years, 2 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 TOOLS_GN_TARGET_H_ 5 #ifndef TOOLS_GN_TARGET_H_
6 #define TOOLS_GN_TARGET_H_ 6 #define TOOLS_GN_TARGET_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 // Toolchain used by this target. Null until target is resolved. 308 // Toolchain used by this target. Null until target is resolved.
309 const Toolchain* toolchain_; 309 const Toolchain* toolchain_;
310 310
311 // Output files. Null until the target is resolved. 311 // Output files. Null until the target is resolved.
312 OutputFile link_output_file_; 312 OutputFile link_output_file_;
313 OutputFile dependency_output_file_; 313 OutputFile dependency_output_file_;
314 314
315 DISALLOW_COPY_AND_ASSIGN(Target); 315 DISALLOW_COPY_AND_ASSIGN(Target);
316 }; 316 };
317 317
318 namespace BASE_HASH_NAMESPACE {
319
320 #if defined(COMPILER_GCC)
321 template<> struct hash<const Target*> {
322 std::size_t operator()(const Target* t) const {
323 return reinterpret_cast<std::size_t>(t);
324 }
325 };
326 #elif defined(COMPILER_MSVC)
327 inline size_t hash_value(const Target* t) {
328 return reinterpret_cast<size_t>(t);
329 }
330 #endif // COMPILER...
331
332 } // namespace BASE_HASH_NAMESPACE
333
334 #endif // TOOLS_GN_TARGET_H_ 318 #endif // TOOLS_GN_TARGET_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698