11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
*
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
#import "macros.h"
OF_ASSUME_NONNULL_BEGIN
typedef struct of_block_literal_t {
#ifdef __OBJC__
Class isa;
#else
|
>
>
>
|
|
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
*
* Alternatively, it may be distributed under the terms of the GNU General
* Public License, either version 2 or 3, which can be found in the file
* LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
* file.
*/
#ifndef OBJFW_BLOCK_H
#define OBJFW_BLOCK_H
#include "macros.h"
OF_ASSUME_NONNULL_BEGIN
typedef struct of_block_literal_t {
#ifdef __OBJC__
Class isa;
#else
|
66
67
68
69
70
71
72
|
((__typeof__(__VA_ARGS__))_Block_copy((const void *)(__VA_ARGS__)))
#endif
#ifndef Block_release
# define Block_release(...) _Block_release((const void *)(__VA_ARGS__))
#endif
OF_ASSUME_NONNULL_END
|
>
>
|
69
70
71
72
73
74
75
76
77
|
((__typeof__(__VA_ARGS__))_Block_copy((const void *)(__VA_ARGS__)))
#endif
#ifndef Block_release
# define Block_release(...) _Block_release((const void *)(__VA_ARGS__))
#endif
OF_ASSUME_NONNULL_END
#endif
|