OLD | NEW |
---|---|
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 BASE_AT_EXIT_H_ | 5 #ifndef BASE_AT_EXIT_H_ |
6 #define BASE_AT_EXIT_H_ | 6 #define BASE_AT_EXIT_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <stack> | 9 #include <stack> |
10 | 10 |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
62 }; | 62 }; |
63 | 63 |
64 base::Lock lock_; | 64 base::Lock lock_; |
65 std::stack<CallbackAndParam> stack_; | 65 std::stack<CallbackAndParam> stack_; |
66 AtExitManager* next_manager_; // Stack of managers to allow shadowing. | 66 AtExitManager* next_manager_; // Stack of managers to allow shadowing. |
67 | 67 |
68 DISALLOW_COPY_AND_ASSIGN(AtExitManager); | 68 DISALLOW_COPY_AND_ASSIGN(AtExitManager); |
69 }; | 69 }; |
70 | 70 |
71 #if defined(UNIT_TEST) | 71 #if defined(UNIT_TEST) |
72 class ShadowingAtExitManager : public AtExitManager { | 72 class BASE_API ShadowingAtExitManager : public AtExitManager { |
rvargas (doing something else)
2011/04/28 23:29:44
Why is this needed? There is no implementation out
Evan Martin
2011/04/28 23:39:40
Fixed.
| |
73 public: | 73 public: |
74 ShadowingAtExitManager() : AtExitManager(true) {} | 74 ShadowingAtExitManager() : AtExitManager(true) {} |
75 }; | 75 }; |
76 #endif // defined(UNIT_TEST) | 76 #endif // defined(UNIT_TEST) |
77 | 77 |
78 } // namespace base | 78 } // namespace base |
79 | 79 |
80 #endif // BASE_AT_EXIT_H_ | 80 #endif // BASE_AT_EXIT_H_ |
OLD | NEW |