Mercurial > cpython-lru_cache-weakref
annotate Python/frozen.c @ 20737:00a581bdedeb legacy-trunk
When overriding __str__ or __repr__, set the tp_print slot to NULL.
| author | Guido van Rossum <guido@python.org> |
|---|---|
| date | Mon, 29 Oct 2001 14:33:44 +0000 |
| parents | cb334a8c8dd2 |
| children | 46275f9e7407 |
| rev | line source |
|---|---|
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
2896
diff
changeset
|
1 |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
2896
diff
changeset
|
2 /* Dummy frozen modules initializer */ |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
2896
diff
changeset
|
3 |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
2896
diff
changeset
|
4 #include "Python.h" |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
2896
diff
changeset
|
5 |
| 2896 | 6 /* In order to test the support for frozen modules, by default we |
| 7 define a single frozen module, __hello__. Loading it will print | |
| 8 some famous words... */ | |
| 9 | |
|
20526
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
10 /* To regenerate this data after the bytecode or marshal format has changed, |
|
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
11 go to ../Tools/freeze/ and freeze the hello.py file; then copy and paste |
|
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
12 the appropriate bytes from M___main__.c. */ |
|
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
13 |
| 2896 | 14 static unsigned char M___hello__[] = { |
|
5885
76b1da21f3a8
Oops -- this contains frozen bytecode, but it was Python 1.4 bytecode!
Guido van Rossum <guido@python.org>
parents:
4503
diff
changeset
|
15 99,0,0,0,0,1,0,0,0,115,15,0,0,0,127,0, |
|
76b1da21f3a8
Oops -- this contains frozen bytecode, but it was Python 1.4 bytecode!
Guido van Rossum <guido@python.org>
parents:
4503
diff
changeset
|
16 0,127,1,0,100,0,0,71,72,100,1,0,83,40,2,0, |
|
76b1da21f3a8
Oops -- this contains frozen bytecode, but it was Python 1.4 bytecode!
Guido van Rossum <guido@python.org>
parents:
4503
diff
changeset
|
17 0,0,115,14,0,0,0,72,101,108,108,111,32,119,111,114, |
|
76b1da21f3a8
Oops -- this contains frozen bytecode, but it was Python 1.4 bytecode!
Guido van Rossum <guido@python.org>
parents:
4503
diff
changeset
|
18 108,100,46,46,46,78,40,0,0,0,0,40,0,0,0,0, |
|
20526
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
19 40,0,0,0,0,40,0,0,0,0,115,8,0,0,0,104, |
|
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
20 101,108,108,111,46,112,121,115,1,0,0,0,63,1,0,115, |
|
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
21 0,0,0,0, |
| 2896 | 22 }; |
| 23 | |
|
20528
cb334a8c8dd2
Squash compiler wng about signed/unsigned mismatch.
Tim Peters <tim.peters@gmail.com>
parents:
20526
diff
changeset
|
24 #define SIZE (int)sizeof(M___hello__) |
|
20526
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
25 |
|
3684
606c38535f30
New style interface via pointer variable.
Guido van Rossum <guido@python.org>
parents:
3621
diff
changeset
|
26 static struct _frozen _PyImport_FrozenModules[] = { |
|
7845
949b59820185
Add primitive test for frozen package.
Guido van Rossum <guido@python.org>
parents:
5885
diff
changeset
|
27 /* Test module */ |
|
20526
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
28 {"__hello__", M___hello__, SIZE}, |
|
7845
949b59820185
Add primitive test for frozen package.
Guido van Rossum <guido@python.org>
parents:
5885
diff
changeset
|
29 /* Test package (negative size indicates package-ness) */ |
|
20526
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
30 {"__phello__", M___hello__, -SIZE}, |
|
1f3c1e831f21
Fix the frozen bytecode for __hello__ (betcha didn't know that existed
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
31 {"__phello__.spam", M___hello__, SIZE}, |
| 2896 | 32 {0, 0, 0} /* sentinel */ |
| 33 }; | |
|
3684
606c38535f30
New style interface via pointer variable.
Guido van Rossum <guido@python.org>
parents:
3621
diff
changeset
|
34 |
|
606c38535f30
New style interface via pointer variable.
Guido van Rossum <guido@python.org>
parents:
3621
diff
changeset
|
35 /* Embedding apps may change this pointer to point to their favorite |
|
606c38535f30
New style interface via pointer variable.
Guido van Rossum <guido@python.org>
parents:
3621
diff
changeset
|
36 collection of frozen modules: */ |
|
606c38535f30
New style interface via pointer variable.
Guido van Rossum <guido@python.org>
parents:
3621
diff
changeset
|
37 |
|
606c38535f30
New style interface via pointer variable.
Guido van Rossum <guido@python.org>
parents:
3621
diff
changeset
|
38 struct _frozen *PyImport_FrozenModules = _PyImport_FrozenModules; |
