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

Side by Side Diff: base/bind_internal_win.h

Issue 6561004: Callback support for __fastcall and __stdcall functions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/base
Patch Set: endif Created 9 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 | Annotate | Revision Log
OLDNEW
(Empty)
1 // This file was GENERATED by command:
2 // pump.py bind_internal_win.h.pump
3 // DO NOT EDIT BY HAND!!!
4
5
6 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
7 // Use of this source code is governed by a BSD-style license that can be
8 // found in the LICENSE file.
9
10 // Specializations of FunctionTraits<> for Windows specific calling
11 // conventions. Please see base/bind_internal.h for more info.
12
13 #ifndef BASE_BIND_INTERNAL_WIN_H_
14 #define BASE_BIND_INTERNAL_WIN_H_
15 #pragma once
16
17 namespace base {
18 namespace internal {
19
20 // __stdcall Function: Arity 0.
21 template <typename R>
22 struct FunctionTraits<R(__stdcall *)()> {
23 typedef R (*NormalizedSig)();
24 typedef false_type IsMethod;
25 };
26
27 // __fastcall Function: Arity 0.
28 template <typename R>
29 struct FunctionTraits<R(__fastcall *)()> {
30 typedef R (*NormalizedSig)();
31 typedef false_type IsMethod;
32 };
33
34 // __stdcall Function: Arity 1.
35 template <typename R, typename X1>
36 struct FunctionTraits<R(__stdcall *)(X1)> {
37 typedef R (*NormalizedSig)(X1);
38 typedef false_type IsMethod;
39 };
40
41 // __fastcall Function: Arity 1.
42 template <typename R, typename X1>
43 struct FunctionTraits<R(__fastcall *)(X1)> {
44 typedef R (*NormalizedSig)(X1);
45 typedef false_type IsMethod;
46 };
47
48 // __stdcall Function: Arity 2.
49 template <typename R, typename X1, typename X2>
50 struct FunctionTraits<R(__stdcall *)(X1, X2)> {
51 typedef R (*NormalizedSig)(X1, X2);
52 typedef false_type IsMethod;
53 };
54
55 // __fastcall Function: Arity 2.
56 template <typename R, typename X1, typename X2>
57 struct FunctionTraits<R(__fastcall *)(X1, X2)> {
58 typedef R (*NormalizedSig)(X1, X2);
59 typedef false_type IsMethod;
60 };
61
62 // __stdcall Function: Arity 3.
63 template <typename R, typename X1, typename X2, typename X3>
64 struct FunctionTraits<R(__stdcall *)(X1, X2, X3)> {
65 typedef R (*NormalizedSig)(X1, X2, X3);
66 typedef false_type IsMethod;
67 };
68
69 // __fastcall Function: Arity 3.
70 template <typename R, typename X1, typename X2, typename X3>
71 struct FunctionTraits<R(__fastcall *)(X1, X2, X3)> {
72 typedef R (*NormalizedSig)(X1, X2, X3);
73 typedef false_type IsMethod;
74 };
75
76 // __stdcall Function: Arity 4.
77 template <typename R, typename X1, typename X2, typename X3, typename X4>
78 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4)> {
79 typedef R (*NormalizedSig)(X1, X2, X3, X4);
80 typedef false_type IsMethod;
81 };
82
83 // __fastcall Function: Arity 4.
84 template <typename R, typename X1, typename X2, typename X3, typename X4>
85 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4)> {
86 typedef R (*NormalizedSig)(X1, X2, X3, X4);
87 typedef false_type IsMethod;
88 };
89
90 // __stdcall Function: Arity 5.
91 template <typename R, typename X1, typename X2, typename X3, typename X4,
92 typename X5>
93 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4, X5)> {
94 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5);
95 typedef false_type IsMethod;
96 };
97
98 // __fastcall Function: Arity 5.
99 template <typename R, typename X1, typename X2, typename X3, typename X4,
100 typename X5>
101 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4, X5)> {
102 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5);
103 typedef false_type IsMethod;
104 };
105
106 // __stdcall Function: Arity 6.
107 template <typename R, typename X1, typename X2, typename X3, typename X4,
108 typename X5, typename X6>
109 struct FunctionTraits<R(__stdcall *)(X1, X2, X3, X4, X5, X6)> {
110 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5, X6);
111 typedef false_type IsMethod;
112 };
113
114 // __fastcall Function: Arity 6.
115 template <typename R, typename X1, typename X2, typename X3, typename X4,
116 typename X5, typename X6>
117 struct FunctionTraits<R(__fastcall *)(X1, X2, X3, X4, X5, X6)> {
118 typedef R (*NormalizedSig)(X1, X2, X3, X4, X5, X6);
119 typedef false_type IsMethod;
120 };
121
122 } // namespace internal
123 } // namespace base
124
125 #endif // BASE_BIND_INTERNAL_WIN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698