1 /**
2  * D header file for C99.
3  *
4  * $(C_HEADER_DESCRIPTION pubs.opengroup.org/onlinepubs/009695399/basedefs/_complex.h.html, _complex.h)
5  *
6  * Copyright: Copyright Sean Kelly 2005 - 2009.
7  * License: Distributed under the
8  *      $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0).
9  *    (See accompanying file LICENSE)
10  * Authors:   Sean Kelly
11  * Source:    $(DRUNTIMESRC core/stdc/_complex.d)
12  * Standards: ISO/IEC 9899:1999 (E)
13  */
14 
15 module core.stdc.complex;
16 
17 extern (C):
18 @trusted: // All of these operate on floating point values only.
19 nothrow:
20 @nogc:
21 
22 ///
23 alias creal complex;
24 ///
25 alias ireal imaginary;
26 ///
27 cdouble cacos(cdouble z);
28 ///
29 cfloat  cacosf(cfloat z);
30 ///
31 creal   cacosl(creal z);
32 
33 ///
34 cdouble casin(cdouble z);
35 ///
36 cfloat  casinf(cfloat z);
37 ///
38 creal   casinl(creal z);
39 
40 ///
41 cdouble catan(cdouble z);
42 ///
43 cfloat  catanf(cfloat z);
44 ///
45 creal   catanl(creal z);
46 
47 ///
48 cdouble ccos(cdouble z);
49 ///
50 cfloat  ccosf(cfloat z);
51 ///
52 creal   ccosl(creal z);
53 
54 ///
55 cdouble csin(cdouble z);
56 ///
57 cfloat  csinf(cfloat z);
58 ///
59 creal   csinl(creal z);
60 
61 ///
62 cdouble ctan(cdouble z);
63 ///
64 cfloat  ctanf(cfloat z);
65 ///
66 creal   ctanl(creal z);
67 
68 ///
69 cdouble cacosh(cdouble z);
70 ///
71 cfloat  cacoshf(cfloat z);
72 ///
73 creal   cacoshl(creal z);
74 
75 ///
76 cdouble casinh(cdouble z);
77 ///
78 cfloat  casinhf(cfloat z);
79 ///
80 creal   casinhl(creal z);
81 
82 ///
83 cdouble catanh(cdouble z);
84 ///
85 cfloat  catanhf(cfloat z);
86 ///
87 creal   catanhl(creal z);
88 
89 ///
90 cdouble ccosh(cdouble z);
91 ///
92 cfloat  ccoshf(cfloat z);
93 ///
94 creal   ccoshl(creal z);
95 
96 ///
97 cdouble csinh(cdouble z);
98 ///
99 cfloat  csinhf(cfloat z);
100 ///
101 creal   csinhl(creal z);
102 
103 ///
104 cdouble ctanh(cdouble z);
105 ///
106 cfloat  ctanhf(cfloat z);
107 ///
108 creal   ctanhl(creal z);
109 
110 ///
111 cdouble cexp(cdouble z);
112 ///
113 cfloat  cexpf(cfloat z);
114 ///
115 creal   cexpl(creal z);
116 
117 ///
118 cdouble clog(cdouble z);
119 ///
120 cfloat  clogf(cfloat z);
121 ///
122 creal   clogl(creal z);
123 
124 ///
125  double cabs(cdouble z);
126  ///
127  float  cabsf(cfloat z);
128  ///
129  real   cabsl(creal z);
130 
131  ///
132 cdouble cpow(cdouble x, cdouble y);
133 ///
134 cfloat  cpowf(cfloat x, cfloat y);
135 ///
136 creal   cpowl(creal x, creal y);
137 
138 ///
139 cdouble csqrt(cdouble z);
140 ///
141 cfloat  csqrtf(cfloat z);
142 ///
143 creal   csqrtl(creal z);
144 
145 ///
146  double carg(cdouble z);
147  ///
148  float  cargf(cfloat z);
149  ///
150  real   cargl(creal z);
151 
152  ///
153  double cimag(cdouble z);
154  ///
155  float  cimagf(cfloat z);
156  ///
157  real   cimagl(creal z);
158 
159  ///
160 cdouble conj(cdouble z);
161 ///
162 cfloat  conjf(cfloat z);
163 ///
164 creal   conjl(creal z);
165 
166 ///
167 cdouble cproj(cdouble z);
168 ///
169 cfloat  cprojf(cfloat z);
170 ///
171 creal   cprojl(creal z);
172 
173 // double creal(cdouble z);
174 ///
175  float  crealf(cfloat z);
176  ///
177  real   creall(creal z);
178