Mercurial > cpython-lru_cache-weakref
annotate Python/getcompiler.c @ 22613:ddc9543c76a0 legacy-trunk
Introduce two new flag bits that can be set in a PyMethodDef method
descriptor, as used for the tp_methods slot of a type. These new flag
bits are both optional, and mutually exclusive. Most methods will not
use either. These flags are used to create special method types which
exist in the same namespace as normal methods without having to use
tedious construction code to insert the new special method objects in
the type's tp_dict after PyType_Ready() has been called.
If METH_CLASS is specified, the method will represent a class method
like that returned by the classmethod() built-in.
If METH_STATIC is specified, the method will represent a static method
like that returned by the staticmethod() built-in.
These flags may not be used in the PyMethodDef table for modules since
these special method types are not meaningful in that case; a
ValueError will be raised if these flags are found in that context.
| author | Fred Drake <fdrake@acm.org> |
|---|---|
| date | Thu, 28 Mar 2002 05:33:33 +0000 |
| parents | 4306107b1395 |
| children |
| rev | line source |
|---|---|
| 3589 | 1 |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
2 /* Return the compiler identification, if possible. */ |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
3 |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
4 #include "Python.h" |
| 3589 | 5 |
| 6 #ifndef COMPILER | |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
7 |
| 2896 | 8 #ifdef __GNUC__ |
|
14410
4306107b1395
The GCC version is loooooooooong; put it on a new line.
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
9 #define COMPILER "\n[GCC " __VERSION__ "]" |
| 2896 | 10 #endif |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
11 |
| 3589 | 12 #endif /* !COMPILER */ |
| 2896 | 13 |
| 14 #ifndef COMPILER | |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
15 |
| 2896 | 16 #ifdef __cplusplus |
| 17 #define COMPILER "[C++]" | |
| 18 #else | |
| 19 #define COMPILER "[C]" | |
| 20 #endif | |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
21 |
| 3589 | 22 #endif /* !COMPILER */ |
| 2896 | 23 |
|
5860
728a083242a2
Make it return a _const_ char*.
Guido van Rossum <guido@python.org>
parents:
4503
diff
changeset
|
24 const char * |
|
13658
f79434ee41fa
Mass ANSIfication of function definitions. Doesn't cover all 'extern'
Thomas Wouters <thomas@python.org>
parents:
13256
diff
changeset
|
25 Py_GetCompiler(void) |
| 2896 | 26 { |
| 27 return COMPILER; | |
| 28 } |
