diff options
author | Guido van Rossum <guido@python.org> | 1993-03-29 10:43:31 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1993-03-29 10:43:31 (GMT) |
commit | 9bfef44d97d1ae24e03717e3d59024b44626a9de (patch) | |
tree | 736b9f406d27f9dc4496f103cd395fb7a97401d4 /Include | |
parent | 4b1302bd1d211881178618aa8f41fa4460180f2e (diff) | |
download | cpython-9bfef44d97d1ae24e03717e3d59024b44626a9de.zip cpython-9bfef44d97d1ae24e03717e3d59024b44626a9de.tar.gz cpython-9bfef44d97d1ae24e03717e3d59024b44626a9de.tar.bz2 |
* Changed all copyright messages to include 1993.
* Stubs for faster implementation of local variables (not yet finished)
* Added function name to code object. Print it for code and function
objects. THIS MAKES THE .PYC FILE FORMAT INCOMPATIBLE (the version
number has changed accordingly)
* Print address of self for built-in methods
* New internal functions getattro and setattro (getattr/setattr with
string object arg)
* Replaced "dictobject" with more powerful "mappingobject"
* New per-type functio tp_hash to implement arbitrary object hashing,
and hashobject() to interface to it
* Added built-in functions hash(v) and hasattr(v, 'name')
* classobject: made some functions static that accidentally weren't;
added __hash__ special instance method to implement hash()
* Added proper comparison for built-in methods and functions
Diffstat (limited to 'Include')
41 files changed, 111 insertions, 102 deletions
diff --git a/Include/assert.h b/Include/assert.h index 32d78bb..ac9c5d2 100644 --- a/Include/assert.h +++ b/Include/assert.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/bitset.h b/Include/bitset.h index d076148..07b64b0 100644 --- a/Include/bitset.h +++ b/Include/bitset.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/bltinmodule.h b/Include/bltinmodule.h index dace6c5..f162af1 100644 --- a/Include/bltinmodule.h +++ b/Include/bltinmodule.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/ceval.h b/Include/ceval.h index e7281f4..bec6681 100644 --- a/Include/ceval.h +++ b/Include/ceval.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/cgensupport.h b/Include/cgensupport.h index c2598f8..5c2cbd4 100644 --- a/Include/cgensupport.h +++ b/Include/cgensupport.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/classobject.h b/Include/classobject.h index b33cacc..88b955a 100644 --- a/Include/classobject.h +++ b/Include/classobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/compile.h b/Include/compile.h index 92b34d8..a447852 100644 --- a/Include/compile.h +++ b/Include/compile.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved @@ -28,7 +28,9 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. /* An intermediate code fragment contains: - a string that encodes the instructions, - a list of the constants, - - and a list of the names used. */ + - a list of the names used, + - the filename from which it was compiled, + - the name of the object for which it was compiled. */ typedef struct { OB_HEAD @@ -36,6 +38,7 @@ typedef struct { object *co_consts; /* list of immutable constant objects */ object *co_names; /* list of stringobjects */ object *co_filename; /* string */ + object *co_name; /* string */ } codeobject; extern typeobject Codetype; @@ -46,4 +49,5 @@ extern typeobject Codetype; /* Public interface */ struct _node; /* Declare the existence of this type */ codeobject *compile PROTO((struct _node *, char *)); -codeobject *newcodeobject PROTO((object *, object *, object *, object *)); +codeobject *newcodeobject + PROTO((object *, object *, object *, object *, object *)); diff --git a/Include/dictobject.h b/Include/dictobject.h index 2c5d539..ce71570 100644 --- a/Include/dictobject.h +++ b/Include/dictobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved @@ -22,28 +22,23 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ******************************************************************/ -/* -Dictionary object type -- mapping from char * to object. -NB: the key is given as a char *, not as a stringobject. -These functions set errno for errors. Functions dictremove() and -dictinsert() return nonzero for errors, getdictsize() returns -1, -the others NULL. A successful call to dictinsert() calls INCREF() -for the inserted item. -*/ +/* All in the sake of backward compatibility... */ -extern typeobject Dicttype; +#include "mappingobject.h" -#define is_dictobject(op) ((op)->ob_type == &Dicttype) +#define is_dictobject(op) is_mappingobject(op) + +#define newdictobject newmappingobject -extern object *newdictobject PROTO((void)); extern object *dictlookup PROTO((object *dp, char *key)); extern int dictinsert PROTO((object *dp, char *key, object *item)); extern int dictremove PROTO((object *dp, char *key)); -extern int getdictsize PROTO((object *dp)); extern char *getdictkey PROTO((object *dp, int i)); -extern object *getdictkeys PROTO((object *dp)); -extern object *getdict2key PROTO((object *dp, int i)); -extern object *dict2lookup PROTO((object *dp, object *key)); -extern int dict2insert PROTO((object *dp, object *key, object *item)); -extern int dict2remove PROTO((object *dp, object *key)); +#define getdictsize getmappingsize +#define getdictkeys getmappingkeys + +#define getdict2key getmappingkey +#define dict2lookup mappinglookup +#define dict2insert mappinginsert +#define dict2remove mappingremove diff --git a/Include/errcode.h b/Include/errcode.h index 33d65c2..1439c7b 100644 --- a/Include/errcode.h +++ b/Include/errcode.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/errors.h b/Include/errors.h index 5a2a00a..f2d7b1a 100755 --- a/Include/errors.h +++ b/Include/errors.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/eval.h b/Include/eval.h index da4bbde..8ac672f 100644 --- a/Include/eval.h +++ b/Include/eval.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/fileobject.h b/Include/fileobject.h index 7bce698..ee2201f 100644 --- a/Include/fileobject.h +++ b/Include/fileobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/floatobject.h b/Include/floatobject.h index 9ea3e01..9a70c3b 100644 --- a/Include/floatobject.h +++ b/Include/floatobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/frameobject.h b/Include/frameobject.h index dd36468..4d17267 100644 --- a/Include/frameobject.h +++ b/Include/frameobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/funcobject.h b/Include/funcobject.h index eef2ce1..d24600d 100644 --- a/Include/funcobject.h +++ b/Include/funcobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/grammar.h b/Include/grammar.h index 5fd8915..5aace87 100644 --- a/Include/grammar.h +++ b/Include/grammar.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/intobject.h b/Include/intobject.h index d89abb3..ef11c2f 100644 --- a/Include/intobject.h +++ b/Include/intobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/intrcheck.h b/Include/intrcheck.h index 68d4977..886dbed 100644 --- a/Include/intrcheck.h +++ b/Include/intrcheck.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/listobject.h b/Include/listobject.h index 710db2d..519776a 100644 --- a/Include/listobject.h +++ b/Include/listobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/longintrepr.h b/Include/longintrepr.h index 84f3524..7ca69ba 100644 --- a/Include/longintrepr.h +++ b/Include/longintrepr.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/longobject.h b/Include/longobject.h index c17b2f5..5a8b715 100644 --- a/Include/longobject.h +++ b/Include/longobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/marshal.h b/Include/marshal.h index 636357c..9b16227 100644 --- a/Include/marshal.h +++ b/Include/marshal.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/metagrammar.h b/Include/metagrammar.h index 1923996..40b7d6c 100644 --- a/Include/metagrammar.h +++ b/Include/metagrammar.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/methodobject.h b/Include/methodobject.h index c6c5606..0cbfd6a 100644 --- a/Include/methodobject.h +++ b/Include/methodobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/moduleobject.h b/Include/moduleobject.h index 0dfcada..bf3c4a4 100644 --- a/Include/moduleobject.h +++ b/Include/moduleobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/mymalloc.h b/Include/mymalloc.h index e4315bd..6259712 100644 --- a/Include/mymalloc.h +++ b/Include/mymalloc.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/myselect.h b/Include/myselect.h index 54884ad..3f65243 100644 --- a/Include/myselect.h +++ b/Include/myselect.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/node.h b/Include/node.h index fa60f51..31bae1b 100644 --- a/Include/node.h +++ b/Include/node.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/object.h b/Include/object.h index f644be3..ff02bea 100644 --- a/Include/object.h +++ b/Include/object.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved @@ -188,6 +188,10 @@ typedef struct _typeobject { number_methods *tp_as_number; sequence_methods *tp_as_sequence; mapping_methods *tp_as_mapping; + + /* More standard operations (at end for binary compatibility) */ + + long (*tp_hash) FPROTO((object *)); } typeobject; extern typeobject Typetype; /* The type of type objects */ @@ -199,7 +203,9 @@ extern int printobject PROTO((object *, FILE *, int)); extern object * reprobject PROTO((object *)); extern int cmpobject PROTO((object *, object *)); extern object *getattr PROTO((object *, char *)); -extern int setattr PROTO((object *, char *, object *)); +extern object *getattro PROTO((object *, object *)); +extern int setattro PROTO((object *, object *, object *)); +extern long hashobject PROTO((object *)); /* Flag bits for printing: */ #define PRINT_RAW 1 /* No string quotes etc. */ diff --git a/Include/objimpl.h b/Include/objimpl.h index 3d1dceb..683f03e 100644 --- a/Include/objimpl.h +++ b/Include/objimpl.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/opcode.h b/Include/opcode.h index a0db342d..67c0b82 100644 --- a/Include/opcode.h +++ b/Include/opcode.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved @@ -113,6 +113,10 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #define LOAD_LOCAL 115 /* Index in name list */ #define LOAD_GLOBAL 116 /* Index in name list */ +#define LOAD_FAST 117 /* Local variable number */ +#define STORE_FAST 118 /* Local variable number */ +#define RESERVE_FAST 119 /* Number of local variables */ + #define SETUP_LOOP 120 /* Target address (absolute) */ #define SETUP_EXCEPT 121 /* "" */ #define SETUP_FINALLY 122 /* "" */ diff --git a/Include/osdefs.h b/Include/osdefs.h index 773abdf..939978a 100644 --- a/Include/osdefs.h +++ b/Include/osdefs.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/parsetok.h b/Include/parsetok.h index 3e3cc6c..623c4d8 100644 --- a/Include/parsetok.h +++ b/Include/parsetok.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/pgenheaders.h b/Include/pgenheaders.h index 8607142..049e9f4 100644 --- a/Include/pgenheaders.h +++ b/Include/pgenheaders.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/pyerrors.h b/Include/pyerrors.h index 5a2a00a..f2d7b1a 100644 --- a/Include/pyerrors.h +++ b/Include/pyerrors.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/pythonrun.h b/Include/pythonrun.h index 162a6f7..9441376 100644 --- a/Include/pythonrun.h +++ b/Include/pythonrun.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/structmember.h b/Include/structmember.h index 8520863..425300c 100644 --- a/Include/structmember.h +++ b/Include/structmember.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/sysmodule.h b/Include/sysmodule.h index e703594..36a4499 100644 --- a/Include/sysmodule.h +++ b/Include/sysmodule.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/token.h b/Include/token.h index ba5717b..053ceab 100644 --- a/Include/token.h +++ b/Include/token.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/traceback.h b/Include/traceback.h index 08370e3..c45526c 100644 --- a/Include/traceback.h +++ b/Include/traceback.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved diff --git a/Include/tupleobject.h b/Include/tupleobject.h index 448fb71..4c8d302 100644 --- a/Include/tupleobject.h +++ b/Include/tupleobject.h @@ -1,6 +1,6 @@ /*********************************************************** -Copyright 1991, 1992 by Stichting Mathematisch Centrum, Amsterdam, The -Netherlands. +Copyright 1991, 1992, 1993 by Stichting Mathematisch Centrum, +Amsterdam, The Netherlands. All Rights Reserved |