]> git.saurik.com Git - apple/libdispatch.git/blob - dispatch/dispatch.h
libdispatch-913.1.6.tar.gz
[apple/libdispatch.git] / dispatch / dispatch.h
1 /*
2 * Copyright (c) 2008-2013 Apple Inc. All rights reserved.
3 *
4 * @APPLE_APACHE_LICENSE_HEADER_START@
5 *
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
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
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.
17 *
18 * @APPLE_APACHE_LICENSE_HEADER_END@
19 */
20
21 #ifndef __DISPATCH_PUBLIC__
22 #define __DISPATCH_PUBLIC__
23
24 #ifdef __APPLE__
25 #include <Availability.h>
26 #include <os/availability.h>
27 #include <TargetConditionals.h>
28 #include <os/base.h>
29 #elif defined(__linux__)
30 #include <os/linux_base.h>
31 #endif
32
33 #include <sys/types.h>
34 #include <stddef.h>
35 #include <stdint.h>
36 #include <stdbool.h>
37 #include <stdarg.h>
38 #if !defined(HAVE_UNISTD_H) || HAVE_UNISTD_H
39 #include <unistd.h>
40 #endif
41 #include <fcntl.h>
42
43 #if defined(__linux__) && defined(__has_feature)
44 #if __has_feature(modules)
45 #if !defined(__arm__)
46 #include <stdio.h> // for off_t (to match Glibc.modulemap)
47 #endif
48 #endif
49 #endif
50
51 #define DISPATCH_API_VERSION 20170124
52
53 #ifndef __DISPATCH_BUILDING_DISPATCH__
54
55 #ifndef __DISPATCH_INDIRECT__
56 #define __DISPATCH_INDIRECT__
57 #endif
58
59 #include <os/object.h>
60 #include <dispatch/base.h>
61 #include <dispatch/time.h>
62 #include <dispatch/object.h>
63 #include <dispatch/queue.h>
64 #include <dispatch/block.h>
65 #include <dispatch/source.h>
66 #include <dispatch/group.h>
67 #include <dispatch/semaphore.h>
68 #include <dispatch/once.h>
69 #include <dispatch/data.h>
70 #include <dispatch/io.h>
71
72 #undef __DISPATCH_INDIRECT__
73
74 #endif /* !__DISPATCH_BUILDING_DISPATCH__ */
75
76 #endif