2 * Copyright (c) 2008-2009 Apple Inc. All rights reserved.
4 * @APPLE_APACHE_LICENSE_HEADER_START@
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
18 * @APPLE_APACHE_LICENSE_HEADER_END@
21 #ifndef __DISPATCH_PUBLIC__
22 #define __DISPATCH_PUBLIC__
25 #include <Availability.h>
26 #include <TargetConditionals.h>
29 #include <sys/cdefs.h>
41 #define __block __attribute__((__blocks__(byref)))
45 #if defined(__cplusplus)
46 #define __DISPATCH_BEGIN_DECLS extern "C" {
47 #define __DISPATCH_END_DECLS }
49 #define __DISPATCH_BEGIN_DECLS
50 #define __DISPATCH_END_DECLS
53 #ifndef __OSX_AVAILABLE_STARTING
54 #define __OSX_AVAILABLE_STARTING(x, y)
57 #define DISPATCH_API_VERSION 20090501
59 #ifndef __DISPATCH_BUILDING_DISPATCH__
61 #ifndef __DISPATCH_INDIRECT__
62 #define __DISPATCH_INDIRECT__
65 #include <dispatch/base.h>
66 #include <dispatch/object.h>
67 #include <dispatch/time.h>
68 #include <dispatch/queue.h>
69 #include <dispatch/source.h>
70 #include <dispatch/group.h>
71 #include <dispatch/semaphore.h>
72 #include <dispatch/once.h>
74 #undef __DISPATCH_INDIRECT__
76 #endif /* !__DISPATCH_BUILDING_DISPATCH__ */