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

Side by Side Diff: base/bind_internal_win.h

Issue 7015064: Support binding WeakPtr<> to methods with void return types. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix a few comments. Created 9 years, 7 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 | Annotate | Revision Log
« no previous file with comments | « base/bind_internal.h.pump ('k') | base/bind_internal_win.h.pump » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // This file was GENERATED by command: 1 // This file was GENERATED by command:
2 // pump.py bind_internal_win.h.pump 2 // pump.py bind_internal_win.h.pump
3 // DO NOT EDIT BY HAND!!! 3 // DO NOT EDIT BY HAND!!!
4 4
5 5
6 6
7 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 7 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
8 // Use of this source code is governed by a BSD-style license that can be 8 // Use of this source code is governed by a BSD-style license that can be
9 // found in the LICENSE file. 9 // found in the LICENSE file.
10 10
(...skipping 13 matching lines...) Expand all
24 namespace internal { 24 namespace internal {
25 25
26 template <typename Sig> 26 template <typename Sig>
27 struct FunctionTraits; 27 struct FunctionTraits;
28 28
29 // __stdcall Function: Arity 0. 29 // __stdcall Function: Arity 0.
30 template <typename R> 30 template <typename R>
31 struct FunctionTraits<R(__stdcall *)()> { 31 struct FunctionTraits<R(__stdcall *)()> {
32 typedef R (*NormalizedSig)(); 32 typedef R (*NormalizedSig)();
33 typedef false_type IsMethod; 33 typedef false_type IsMethod;
34
35 typedef R Return;
34 }; 36 };
35 37
36 // __fastcall Function: Arity 0. 38 // __fastcall Function: Arity 0.
37 template <typename R> 39 template <typename R>
38 struct FunctionTraits<R(__fastcall *)()> { 40 struct FunctionTraits<R(__fastcall *)()> {
39 typedef R (*NormalizedSig)(); 41 typedef R (*NormalizedSig)();
40 typedef false_type IsMethod; 42 typedef false_type IsMethod;
43
44 typedef R Return;
41 }; 45 };
42 46
43 // __stdcall Function: Arity 1. 47 // __stdcall Function: Arity 1.
44 template <typename R, typename X1> 48 template <typename R, typename X1>
45 struct FunctionTraits<R(__stdcall *)(X1)> { 49 struct FunctionTraits<R(__stdcall *)(X1)> {
46 typedef R (*NormalizedSig)(X1); 50 typedef R (*NormalizedSig)(X1);
47 typedef false_type IsMethod; 51 typedef false_type IsMethod;
52
53 typedef R Return;
54
48 // Target type for each bound parameter. 55 // Target type for each bound parameter.
49 typedef X1 B1; 56 typedef X1 B1;
50 }; 57 };
51 58
52 // __fastcall Function: Arity 1. 59 // __fastcall Function: Arity 1.
53 template <typename R, typename X1> 60 template <typename R, typename X1>
54 struct FunctionTraits<R(__fastcall *)(X1)> { 61 struct FunctionTraits<R(__fastcall *)(X1)> {
55 typedef R (*NormalizedSig)(X1); 62 typedef R (*NormalizedSig)(X1);
56 typedef false_type IsMethod; 63 typedef false_type IsMethod;
64
65 typedef R Return;
66
57 // Target type for each bound parameter. 67 // Target type for each bound parameter.
58 typedef X1 B1; 68 typedef X1 B1;
59 }; 69 };
60 70
61 // __stdcall Function: Arity 2. 71 // __stdcall Function: Arity 2.
62 template <typename R, typename X1, typename X2> 72 template <typename R, typename X1, typename X2>
63 struct FunctionTraits<R(__stdcall *)(X1, X2)> { 73 struct FunctionTraits<R(__stdcall *)(X1, X2)> {
64 typedef R (*NormalizedSig)(X1, X2); 74 typedef R (*NormalizedSig)(X1, X2);
65 typedef false_type IsMethod; 75 typedef false_type IsMethod;
76
77 typedef R Return;
78
66 // Target type for each bound parameter. 79 // Target type for each bound parameter.
67 typedef X1 B1; 80 typedef X1 B1;
68 typedef X2 B2; 81 typedef X2 B2;
69 }; 82 };
70 83
71 // __fastcall Function: Arity 2. 84 // __fastcall Function: Arity 2.
72 template <typename R, typename X1, typename X2> 85 template <typename R, typename X1, typename X2>
73 struct FunctionTraits<R(__fastcall *)(X1, X2)> { 86 struct FunctionTraits<R(__fastcall *)(X1, X2)> {
74 typedef R (*NormalizedSig)(X1, X2); 87 typedef R (*NormalizedSig)(X1, X2);
75 typedef false_type IsMethod; 88 typedef false_type IsMethod;
89
90 typedef R Return;
91
76 // Target type for each bound parameter. 92 // Target type for each bound parameter.
77 typedef X1 B1; 93 typedef X1 B1;
78 typedef X2 B2; 94 typedef X2 B2;
79 }; 95 };
80 96
81 // __stdcall Function: Arity 3. 97 // __stdcall Function: Arity 3.
82 template <typename R, typename X1, typename X2, typename X3> 98 template <typename R, typename X1, typename X2, typename X3>
83 struct FunctionTraits<R(__stdcall *)(X1, X2, X3)> { 99 struct FunctionTraits<R(__stdcall *)(X1, X2, X3)> {
84 typedef R (*NormalizedSig)(X1, X2, X3); 100 typedef R (*NormalizedSig)(X1, X2, X3);
85 typedef false_type IsMethod; 101 typedef false_type IsMethod;
102
103 typedef R Return;
104
86 // Target type for each bound parameter. 105 // Target type for each bound parameter.
87 typedef X1 B1; 106 typedef X1 B1;
88 typedef X2 B2; 107 typedef X2 B2;
89 typedef X3 B3; 108 typedef X3 B3;
90 }; 109 };
91 110
92 // __fastcall Function: Arity 3. 111 // __fastcall Function: Arity 3.
93 template <typename R, typename X1, typename X2, typename X3> 112 template <typename R, typename X1, typename X2, typename X3>
94 struct FunctionTraits<R(__fastcall *)(X1, X2, X3)> { 113 struct FunctionTraits<R(__fastcall *)(X1, X2, X3)> {
95 typedef R (*NormalizedSig)(X1, X2, X3); 114 typedef R (*NormalizedSig)(X1, X2, X3);
96 typedef false_type IsMethod; 115 typedef false_type IsMethod;
116
117 typedef R Return;
118
97 // Target type for each bound parameter. 119 // Target type for each bound parameter.
98 typedef X1 B1; 120 typedef X1 B1;
99 typedef X2 B2; 121 typedef X2 B2;
100 typedef X3 B3; 122 typedef X3 B3;
101 }; 123 };
102 124
103 // __stdcall Function: Arity 4. 125 // __stdcall Function: Arity 4.
104 template <typename R, typename X1, typename X2, typename X3, typename X4> 126 template <typename R, typename X1, typename X2, typename X3, typename X4>
105 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4)> { 127 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4)> {
106 typedef R (*NormalizedSig)(X1, X2, X3, X4); 128 typedef R (*NormalizedSig)(X1, X2, X3, X4);
107 typedef false_type IsMethod; 129 typedef false_type IsMethod;
130
131 typedef R Return;
132
108 // Target type for each bound parameter. 133 // Target type for each bound parameter.
109 typedef X1 B1; 134 typedef X1 B1;
110 typedef X2 B2; 135 typedef X2 B2;
111 typedef X3 B3; 136 typedef X3 B3;
112 typedef X4 B4; 137 typedef X4 B4;
113 }; 138 };
114 139
115 // __fastcall Function: Arity 4. 140 // __fastcall Function: Arity 4.
116 template <typename R, typename X1, typename X2, typename X3, typename X4> 141 template <typename R, typename X1, typename X2, typename X3, typename X4>
117 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4)> { 142 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4)> {
118 typedef R (*NormalizedSig)(X1, X2, X3, X4); 143 typedef R (*NormalizedSig)(X1, X2, X3, X4);
119 typedef false_type IsMethod; 144 typedef false_type IsMethod;
145
146 typedef R Return;
147
120 // Target type for each bound parameter. 148 // Target type for each bound parameter.
121 typedef X1 B1; 149 typedef X1 B1;
122 typedef X2 B2; 150 typedef X2 B2;
123 typedef X3 B3; 151 typedef X3 B3;
124 typedef X4 B4; 152 typedef X4 B4;
125 }; 153 };
126 154
127 // __stdcall Function: Arity 5. 155 // __stdcall Function: Arity 5.
128 template <typename R, typename X1, typename X2, typename X3, typename X4, 156 template <typename R, typename X1, typename X2, typename X3, typename X4,
129 typename X5> 157 typename X5>
130 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4, X5)> { 158 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4, X5)> {
131 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5); 159 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5);
132 typedef false_type IsMethod; 160 typedef false_type IsMethod;
161
162 typedef R Return;
163
133 // Target type for each bound parameter. 164 // Target type for each bound parameter.
134 typedef X1 B1; 165 typedef X1 B1;
135 typedef X2 B2; 166 typedef X2 B2;
136 typedef X3 B3; 167 typedef X3 B3;
137 typedef X4 B4; 168 typedef X4 B4;
138 typedef X5 B5; 169 typedef X5 B5;
139 }; 170 };
140 171
141 // __fastcall Function: Arity 5. 172 // __fastcall Function: Arity 5.
142 template <typename R, typename X1, typename X2, typename X3, typename X4, 173 template <typename R, typename X1, typename X2, typename X3, typename X4,
143 typename X5> 174 typename X5>
144 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4, X5)> { 175 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4, X5)> {
145 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5); 176 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5);
146 typedef false_type IsMethod; 177 typedef false_type IsMethod;
178
179 typedef R Return;
180
147 // Target type for each bound parameter. 181 // Target type for each bound parameter.
148 typedef X1 B1; 182 typedef X1 B1;
149 typedef X2 B2; 183 typedef X2 B2;
150 typedef X3 B3; 184 typedef X3 B3;
151 typedef X4 B4; 185 typedef X4 B4;
152 typedef X5 B5; 186 typedef X5 B5;
153 }; 187 };
154 188
155 // __stdcall Function: Arity 6. 189 // __stdcall Function: Arity 6.
156 template <typename R, typename X1, typename X2, typename X3, typename X4, 190 template <typename R, typename X1, typename X2, typename X3, typename X4,
157 typename X5, typename X6> 191 typename X5, typename X6>
158 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4, X5, X6)> { 192 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4, X5, X6)> {
159 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5, X6); 193 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5, X6);
160 typedef false_type IsMethod; 194 typedef false_type IsMethod;
195
196 typedef R Return;
197
161 // Target type for each bound parameter. 198 // Target type for each bound parameter.
162 typedef X1 B1; 199 typedef X1 B1;
163 typedef X2 B2; 200 typedef X2 B2;
164 typedef X3 B3; 201 typedef X3 B3;
165 typedef X4 B4; 202 typedef X4 B4;
166 typedef X5 B5; 203 typedef X5 B5;
167 typedef X6 B6; 204 typedef X6 B6;
168 }; 205 };
169 206
170 // __fastcall Function: Arity 6. 207 // __fastcall Function: Arity 6.
171 template <typename R, typename X1, typename X2, typename X3, typename X4, 208 template <typename R, typename X1, typename X2, typename X3, typename X4,
172 typename X5, typename X6> 209 typename X5, typename X6>
173 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4, X5, X6)> { 210 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4, X5, X6)> {
174 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5, X6); 211 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5, X6);
175 typedef false_type IsMethod; 212 typedef false_type IsMethod;
213
214 typedef R Return;
215
176 // Target type for each bound parameter. 216 // Target type for each bound parameter.
177 typedef X1 B1; 217 typedef X1 B1;
178 typedef X2 B2; 218 typedef X2 B2;
179 typedef X3 B3; 219 typedef X3 B3;
180 typedef X4 B4; 220 typedef X4 B4;
181 typedef X5 B5; 221 typedef X5 B5;
182 typedef X6 B6; 222 typedef X6 B6;
183 }; 223 };
184 224
185 } // namespace internal 225 } // namespace internal
186 } // namespace base 226 } // namespace base
187 227
188 #endif // !defined(ARCH_CPU_X86_64) 228 #endif // !defined(ARCH_CPU_X86_64)
189 229
190 #endif // BASE_BIND_INTERNAL_WIN_H_ 230 #endif // BASE_BIND_INTERNAL_WIN_H_
OLDNEW
« no previous file with comments | « base/bind_internal.h.pump ('k') | base/bind_internal_win.h.pump » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698