annotate Include/complexobject.h @ 57303:4aa4c19dfaed legacy-trunk

#1757126: fix typo with the cyrillic_asian alias
author Philip Jenvey <pjenvey@underboss.org>
date Tue, 17 Nov 2009 02:42:26 +0000
parents 34e7c1b14495
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13444
5709ddba423c ANSI-fication and Py_PROTO extermination.
Fred Drake <fdrake@acm.org>
parents: 9586
diff changeset
1 /* Complex number structure */
5709ddba423c ANSI-fication and Py_PROTO extermination.
Fred Drake <fdrake@acm.org>
parents: 9586
diff changeset
2
25554
36124157b317 SF # 607253, header file problems by Ralf W. Grosse-Kunstleve
Neal Norwitz <nnorwitz@gmail.com>
parents: 24752
diff changeset
3 #ifndef Py_COMPLEXOBJECT_H
36124157b317 SF # 607253, header file problems by Ralf W. Grosse-Kunstleve
Neal Norwitz <nnorwitz@gmail.com>
parents: 24752
diff changeset
4 #define Py_COMPLEXOBJECT_H
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
5 #ifdef __cplusplus
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
6 extern "C" {
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
7 #endif
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
8
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
9 typedef struct {
13444
5709ddba423c ANSI-fication and Py_PROTO extermination.
Fred Drake <fdrake@acm.org>
parents: 9586
diff changeset
10 double real;
5709ddba423c ANSI-fication and Py_PROTO extermination.
Fred Drake <fdrake@acm.org>
parents: 9586
diff changeset
11 double imag;
3765
db5488fe495b renamed complex -> Py_complex
Guido van Rossum <guido@python.org>
parents: 3613
diff changeset
12 } Py_complex;
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
13
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
14 /* Operations on complex numbers from complexmodule.c */
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
15
3613
2f314ca0cd33 rename exported symbols with _Py_ prefix
Guido van Rossum <guido@python.org>
parents: 3321
diff changeset
16 #define c_sum _Py_c_sum
2f314ca0cd33 rename exported symbols with _Py_ prefix
Guido van Rossum <guido@python.org>
parents: 3321
diff changeset
17 #define c_diff _Py_c_diff
2f314ca0cd33 rename exported symbols with _Py_ prefix
Guido van Rossum <guido@python.org>
parents: 3321
diff changeset
18 #define c_neg _Py_c_neg
2f314ca0cd33 rename exported symbols with _Py_ prefix
Guido van Rossum <guido@python.org>
parents: 3321
diff changeset
19 #define c_prod _Py_c_prod
2f314ca0cd33 rename exported symbols with _Py_ prefix
Guido van Rossum <guido@python.org>
parents: 3321
diff changeset
20 #define c_quot _Py_c_quot
2f314ca0cd33 rename exported symbols with _Py_ prefix
Guido van Rossum <guido@python.org>
parents: 3321
diff changeset
21 #define c_pow _Py_c_pow
46477
b69f443ef480 Merged revisions 62380,62382-62383 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 44351
diff changeset
22 #define c_abs _Py_c_abs
3613
2f314ca0cd33 rename exported symbols with _Py_ prefix
Guido van Rossum <guido@python.org>
parents: 3321
diff changeset
23
24752
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
24 PyAPI_FUNC(Py_complex) c_sum(Py_complex, Py_complex);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
25 PyAPI_FUNC(Py_complex) c_diff(Py_complex, Py_complex);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
26 PyAPI_FUNC(Py_complex) c_neg(Py_complex);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
27 PyAPI_FUNC(Py_complex) c_prod(Py_complex, Py_complex);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
28 PyAPI_FUNC(Py_complex) c_quot(Py_complex, Py_complex);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
29 PyAPI_FUNC(Py_complex) c_pow(Py_complex, Py_complex);
46477
b69f443ef480 Merged revisions 62380,62382-62383 via svnmerge from
Christian Heimes <christian@cheimes.de>
parents: 44351
diff changeset
30 PyAPI_FUNC(double) c_abs(Py_complex);
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
31
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
32
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
33 /* Complex object interface */
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
34
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
35 /*
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
36 PyComplexObject represents a complex number with double-precision
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
37 real and imaginary parts.
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
38 */
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
39
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
40 typedef struct {
13444
5709ddba423c ANSI-fication and Py_PROTO extermination.
Fred Drake <fdrake@acm.org>
parents: 9586
diff changeset
41 PyObject_HEAD
5709ddba423c ANSI-fication and Py_PROTO extermination.
Fred Drake <fdrake@acm.org>
parents: 9586
diff changeset
42 Py_complex cval;
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
43 } PyComplexObject;
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
44
24752
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
45 PyAPI_DATA(PyTypeObject) PyComplex_Type;
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
46
19550
19d271f297dc Make the PyXXX_Check() macros for the numeric types inheritance-aware.
Guido van Rossum <guido@python.org>
parents: 13444
diff changeset
47 #define PyComplex_Check(op) PyObject_TypeCheck(op, &PyComplex_Type)
44351
86a2679dca46 #1629: Renamed Py_Size, Py_Type and Py_Refcnt to Py_SIZE, Py_TYPE and Py_REFCNT.
Christian Heimes <christian@cheimes.de>
parents: 42334
diff changeset
48 #define PyComplex_CheckExact(op) (Py_TYPE(op) == &PyComplex_Type)
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
49
24752
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
50 PyAPI_FUNC(PyObject *) PyComplex_FromCComplex(Py_complex);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
51 PyAPI_FUNC(PyObject *) PyComplex_FromDoubles(double real, double imag);
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
52
24752
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
53 PyAPI_FUNC(double) PyComplex_RealAsDouble(PyObject *op);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
54 PyAPI_FUNC(double) PyComplex_ImagAsDouble(PyObject *op);
c1eb668525e1 Excise DL_EXPORT from Include.
Mark Hammond <mhammond@skippinet.com.au>
parents: 19889
diff changeset
55 PyAPI_FUNC(Py_complex) PyComplex_AsCComplex(PyObject *op);
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
56
53629
34e7c1b14495 Issue #1588: Add complex.__format__.
Eric Smith <eric@trueblade.com>
parents: 46477
diff changeset
57 /* Format the object based on the format_spec, as defined in PEP 3101
34e7c1b14495 Issue #1588: Add complex.__format__.
Eric Smith <eric@trueblade.com>
parents: 46477
diff changeset
58 (Advanced String Formatting). */
34e7c1b14495 Issue #1588: Add complex.__format__.
Eric Smith <eric@trueblade.com>
parents: 46477
diff changeset
59 PyAPI_FUNC(PyObject *) _PyComplex_FormatAdvanced(PyObject *obj,
34e7c1b14495 Issue #1588: Add complex.__format__.
Eric Smith <eric@trueblade.com>
parents: 46477
diff changeset
60 char *format_spec,
34e7c1b14495 Issue #1588: Add complex.__format__.
Eric Smith <eric@trueblade.com>
parents: 46477
diff changeset
61 Py_ssize_t format_spec_len);
34e7c1b14495 Issue #1588: Add complex.__format__.
Eric Smith <eric@trueblade.com>
parents: 46477
diff changeset
62
3316
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
63 #ifdef __cplusplus
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
64 }
e5d1f242daf9 complex numbers a la Konrad Hinsen
Guido van Rossum <guido@python.org>
parents:
diff changeset
65 #endif
25554
36124157b317 SF # 607253, header file problems by Ralf W. Grosse-Kunstleve
Neal Norwitz <nnorwitz@gmail.com>
parents: 24752
diff changeset
66 #endif /* !Py_COMPLEXOBJECT_H */