X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Ftypesafe_cb%2F_info;h=165852a3be2a1a4dd7c884dfbe48084991292ae1;hb=97a1ba3d6fac93e680e3d95cef930dea4fdd0822;hp=2d8f68483a5b333ac086fa6d87a42e4debe0c57c;hpb=faace1758e31f87ee2032cc04c6bb41e3cf8f12e;p=ccan diff --git a/ccan/typesafe_cb/_info b/ccan/typesafe_cb/_info index 2d8f6848..165852a3 100644 --- a/ccan/typesafe_cb/_info +++ b/ccan/typesafe_cb/_info @@ -1,11 +1,11 @@ +#include "config.h" #include #include -#include "config.h" /** * typesafe_cb - macros for safe callbacks. * - * The basis of the typesafe_cb header is cast_if_type(): a + * The basis of the typesafe_cb header is typesafe_cb_cast(): a * conditional cast macro. If an expression exactly matches a given * type, it is cast to the target type, otherwise it is left alone. * @@ -35,15 +35,16 @@ * the exactly correct function type to match the argument, or a * function which takes a void *. * - * This is where typesafe_cb() comes in: it uses cast_if_type() to + * This is where typesafe_cb() comes in: it uses typesafe_cb_cast() to * cast the callback function if it matches the argument type: * * void _register_callback(void (*cb)(void *arg), void *arg); * #define register_callback(cb, arg) \ - * _register_callback(typesafe_cb(void, (cb), (arg)), (arg)) + * _register_callback(typesafe_cb(void, void *, (cb), (arg)), \ + * (arg)) * * On compilers which don't support the extensions required - * cast_if_type() and friend become an unconditional cast, so your + * typesafe_cb_cast() and friend become an unconditional cast, so your * code will compile but you won't get type checking. * * Example: @@ -72,7 +73,8 @@ * } * #define register_callback(value, cb, arg) \ * _register_callback(value, \ - * typesafe_cb_preargs(int, (cb), (arg), int),\ + * typesafe_cb_preargs(int, void *, \ + * (cb), (arg), int),\ * (arg)) * * static struct callback *find_callback(int value) @@ -87,7 +89,7 @@ * * // Define several silly callbacks. Note they don't use void *! * #define DEF_CALLBACK(name, op) \ - * static int name(int val, const int *arg)\ + * static int name(int val, int *arg) \ * { \ * printf("%s", #op); \ * return val op *arg; \ @@ -133,7 +135,7 @@ * return 0; * } * - * Licence: LGPL (2 or any later version) + * License: CC0 (Public domain) * Author: Rusty Russell */ int main(int argc, char *argv[])