@@ -41,6 +41,7 @@ impl<F: WithSafety<Safe>> AsSafe for F {}
4141pub trait AsUnsafe : WithSafety < Unsafe > { }
4242impl < F : WithSafety < Unsafe > > AsUnsafe for F { }
4343
44+ cfg_tt:: cfg_tt!{
4445/// Helper trait that simplifies generic bounds when converting between funciton pointer types.
4546pub trait Convertible :
4647 FnPtr
@@ -49,27 +50,26 @@ pub trait Convertible:
4950 + WithAbi <marker:: CUnwind >
5051 + WithAbi <marker:: System >
5152 + WithAbi <marker:: SystemUnwind >
52- + WithAbi < marker:: Rust >
53- + WithAbi < marker:: Aapcs >
54- + WithAbi < marker:: AapcsUnwind >
55- + WithAbi < marker:: Cdecl >
56- + WithAbi < marker:: CdeclUnwind >
57- + WithAbi < marker:: Stdcall >
58- + WithAbi < marker:: StdcallUnwind >
59- + WithAbi < marker:: Fastcall >
60- + WithAbi < marker:: FastcallUnwind >
61- + WithAbi < marker:: Thiscall >
62- + WithAbi < marker:: ThiscallUnwind >
63- + WithAbi < marker:: Vectorcall >
64- + WithAbi < marker:: VectorcallUnwind >
65- + WithAbi < marker:: SysV64 >
66- + WithAbi < marker:: SysV64Unwind >
67- + WithAbi < marker:: Win64 >
68- + WithAbi < marker:: Win64Unwind >
6953 + WithSafety <marker:: Safe >
7054 + WithSafety <marker:: Unsafe >
7155 + AsSafe
7256 + AsUnsafe
57+ #[ cfg( has_abi_aapcs) ] ( + WithAbi <marker:: Aapcs >)
58+ #[ cfg( has_abi_aapcs) ] ( + WithAbi <marker:: AapcsUnwind >)
59+ #[ cfg( has_abi_cdecl) ] ( + WithAbi <marker:: Cdecl >)
60+ #[ cfg( has_abi_cdecl) ] ( + WithAbi <marker:: CdeclUnwind >)
61+ #[ cfg( has_abi_stdcall) ] ( + WithAbi <marker:: Stdcall >)
62+ #[ cfg( has_abi_stdcall) ] ( + WithAbi <marker:: StdcallUnwind >)
63+ #[ cfg( has_abi_fastcall) ] ( + WithAbi <marker:: Fastcall >)
64+ #[ cfg( has_abi_fastcall) ] ( + WithAbi <marker:: FastcallUnwind >)
65+ #[ cfg( has_abi_thiscall) ] ( + WithAbi <marker:: Thiscall >)
66+ #[ cfg( has_abi_thiscall) ] ( + WithAbi <marker:: ThiscallUnwind >)
67+ #[ cfg( has_abi_vectorcall) ] ( + WithAbi <marker:: Vectorcall >)
68+ #[ cfg( has_abi_vectorcall) ] ( + WithAbi <marker:: VectorcallUnwind >)
69+ #[ cfg( has_abi_sysv64) ] ( + WithAbi <marker:: SysV64 >)
70+ #[ cfg( has_abi_sysv64) ] ( + WithAbi <marker:: SysV64Unwind >)
71+ #[ cfg( has_abi_win64) ] ( + WithAbi <marker:: Win64 >)
72+ #[ cfg( has_abi_win64) ] ( + WithAbi <marker:: Win64Unwind >)
7373{
7474}
7575impl <T > Convertible for T
@@ -80,27 +80,28 @@ where
8080 + WithAbi <marker:: CUnwind >
8181 + WithAbi <marker:: System >
8282 + WithAbi <marker:: SystemUnwind >
83- + WithAbi < marker:: Aapcs >
84- + WithAbi < marker:: AapcsUnwind >
85- + WithAbi < marker:: Cdecl >
86- + WithAbi < marker:: CdeclUnwind >
87- + WithAbi < marker:: Stdcall >
88- + WithAbi < marker:: StdcallUnwind >
89- + WithAbi < marker:: Fastcall >
90- + WithAbi < marker:: FastcallUnwind >
91- + WithAbi < marker:: Thiscall >
92- + WithAbi < marker:: ThiscallUnwind >
93- + WithAbi < marker:: Vectorcall >
94- + WithAbi < marker:: VectorcallUnwind >
95- + WithAbi < marker:: SysV64 >
96- + WithAbi < marker:: SysV64Unwind >
97- + WithAbi < marker:: Win64 >
98- + WithAbi < marker:: Win64Unwind >
9983 + WithSafety <marker:: Safe >
10084 + WithSafety <marker:: Unsafe >
10185 + AsSafe
102- + AsUnsafe ,
86+ + AsUnsafe
87+ #[ cfg( has_abi_aapcs) ] ( + WithAbi <marker:: Aapcs >)
88+ #[ cfg( has_abi_aapcs) ] ( + WithAbi <marker:: AapcsUnwind >)
89+ #[ cfg( has_abi_cdecl) ] ( + WithAbi <marker:: Cdecl >)
90+ #[ cfg( has_abi_cdecl) ] ( + WithAbi <marker:: CdeclUnwind >)
91+ #[ cfg( has_abi_stdcall) ] ( + WithAbi <marker:: Stdcall >)
92+ #[ cfg( has_abi_stdcall) ] ( + WithAbi <marker:: StdcallUnwind >)
93+ #[ cfg( has_abi_fastcall) ] ( + WithAbi <marker:: Fastcall >)
94+ #[ cfg( has_abi_fastcall) ] ( + WithAbi <marker:: FastcallUnwind >)
95+ #[ cfg( has_abi_thiscall) ] ( + WithAbi <marker:: Thiscall >)
96+ #[ cfg( has_abi_thiscall) ] ( + WithAbi <marker:: ThiscallUnwind >)
97+ #[ cfg( has_abi_vectorcall) ] ( + WithAbi <marker:: Vectorcall >)
98+ #[ cfg( has_abi_vectorcall) ] ( + WithAbi <marker:: VectorcallUnwind >)
99+ #[ cfg( has_abi_sysv64) ] ( + WithAbi <marker:: SysV64 >)
100+ #[ cfg( has_abi_sysv64) ] ( + WithAbi <marker:: SysV64Unwind >)
101+ #[ cfg( has_abi_win64) ] ( + WithAbi <marker:: Win64 >)
102+ #[ cfg( has_abi_win64) ] ( + WithAbi <marker:: Win64Unwind >)
103103{ }
104+ }
104105
105106/// Construct a function-pointer type identical to the given one but using
106107/// the specified ABI.
0 commit comments