|
Boost : |
Subject: Re: [boost] How to determine if a function with a given signature is declared?
From: Joel falcou (joel.falcou_at_[hidden])
Date: 2011-05-23 21:55:16
On 23/05/11 12:41, Edward Diener wrote:
> On 5/22/2011 10:15 PM, Gottlob Frege wrote:
>> On Sun, May 22, 2011 at 2:34 PM, Edward
>> Diener<eldiener_at_[hidden]> wrote:
>>> On 5/18/2011 1:36 AM, Vicente Botet wrote:
>>>>
>>>> Edward Diener-3 wrote:
>>>>
>>>> Wow, I missed this point. For example, Boost.Thread make use of some
>>>> traits
>>>> of this kind. I guess that it should be no too much work to provide the
>>>> equivalent for free functions; isn't it?
>>>
>>> If it can be done it should be a separate library.
>>>
>>> My library is Type Traits Introspection, meaning it introspects a type.
>>>
>>
>> I would say a function signature is a type. At least it is once it
>> exists. You can argue about whether a type_exists<Type>::value trait
>> makes sense in general.
>
> There is already a library, called function_types, for introspecting a
> function signature.
Well this is different. But basically, you can use the old SFINAE trick
by trying to detect the function f you want and have a f function living
in the global namespace with a (...) prototype. This alas require a
macro taking function name and prototype.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk