summaryrefslogtreecommitdiffstats
path: root/Include/classobject.h
Commit message (Collapse)AuthorAgeFilesLines
* Completely get rid of PyClass and PyInstance.Guido van Rossum2006-08-171-42/+2
| | | | | | | | (classobject.[ch] aren't empty yet because they also define PyMethod.) This breaks lots of stuff, notably cPickle. But it's a step in the right direction. I'll clean it up later. (Also a few unrelated changes, e.g. T_NONE to define a "struct member" that is always None, and simplification of __hash__ -- these are unfinished.)
* Typo repair.Tim Peters2003-04-081-2/+2
|
* New private API function _PyInstance_Lookup. gc will use this to figureTim Peters2003-04-071-0/+12
| | | | out whether __del__ exists, without executing any Python-level code.
* Excise DL_EXPORT from Include.Mark Hammond2002-08-121-9/+9
| | | | Thanks to Skip Montanaro and Kalle Svensson for the patches.
* PyMethodObject(): Update the comment about im_class based upon aGuido van Rossum2001-12-071-1/+1
| | | | conversation with Robin Dunn in SF patch #490402.
* Add PyMethod_Function(), PyMethod_Self(), PyMethod_Class() back.Guido van Rossum2001-09-051-0/+4
| | | | | | While not even documented, they were clearly part of the C API, there's no great difficulty to support them, and it has the cool effect of not requiring any changes to ExtensionClass.c.
* Merge of descr-branch back into trunk.Tim Peters2001-08-021-4/+0
|
* Add the necessary field for weak reference support to the function andFred Drake2001-03-231-0/+1
| | | | method types.
* PEP 205, Weak References -- initial checkin.Fred Drake2001-02-011-0/+1
|
* Added prototype for PyInstance_NewRaw().Fred Drake2001-01-281-0/+1
|
* Remove PyInstance_*BinOp functions.Neil Schemenauer2001-01-041-8/+0
|
* REMOVED all CWI, CNRI and BeOpen copyright markings.Guido van Rossum2000-09-011-9/+0
| | | | This should match the situation in the 1.6b1 tree.
* The real suport for augmented assignment: new opcodes, new PyNumber andThomas Wouters2000-08-241-0/+4
| | | | PySequence methods and functions, new tokens.
* ANSI-fication and Py_PROTO extermination.Fred Drake2000-07-091-32/+33
|
* Change copyright notice - 2nd try.Guido van Rossum2000-06-301-6/+0
|
* Change copyright notice.Guido van Rossum2000-06-301-22/+7
|
* Add DL_IMPORT(returntype) for all officially exported functions.Guido van Rossum1998-12-041-8/+8
|
* Move the definition of PyMethodObject to classobject.h, so it can defineGuido van Rossum1998-07-101-0/+16
| | | | macros for more efficient access to the fields.
* Remove redundant references to thread stuff -- long, long ago, thereGuido van Rossum1997-03-141-6/+0
| | | | was some locking code in this file that needed it...
* New permission notice, includes CNRI.Guido van Rossum1996-10-251-13/+20
|
* changes for keyword args to built-in functions and classesGuido van Rossum1995-07-261-1/+1
|
* make the type a parameter of the DL_IMPORT macro, for Borland CGuido van Rossum1995-02-271-1/+1
|
* corrected two unconverted namesGuido van Rossum1995-01-201-1/+1
|
* The great renaming, phase two: all header files have been updated toGuido van Rossum1995-01-121-25/+27
| | | | | | | use the new names exclusively, and the linker will see the new names. Files that import "Python.h" also only see the new names. Files that import "allobjects.h" will continue to be able to use the old names, due to the inclusion (in allobjects.h) of "rename2.h".
* add 5th arg to instancebinopGuido van Rossum1995-01-071-1/+2
|
* Added 1995 copyright.Guido van Rossum1995-01-041-2/+2
| | | | | | object.h: made sizes and refcnts signed ints. stringobject.h: make getstrsize() signed int. methodobject.h: add METH_VARARGS and METH_FREENAME flag bit definitions.
* ceval.h: added Py_MakePendingCalls()Guido van Rossum1994-09-281-0/+2
| | | | | | classobject.h: added instancebinop() modsupport.h: added newgetargs() rename1.h: removed Py_FPROTO
* Define cl_{get,set,del}attr members in classobjectGuido van Rossum1994-09-061-6/+4
|
* Changes for dynamic linking under NTGuido van Rossum1994-08-181-1/+1
|
* * Objects/classobject.c, Include/classobject.h: added __getattr__Guido van Rossum1994-08-121-0/+12
| | | | | | | | and __setattr__ support to override getattr(x, name) and setattr(x, name, value) for class instances. This uses a special hack whereby the class is supposed to be static: the __getattr__ and __setattr__ methods are looked up only once and saved in the instance structure for speed
* Merge alpha100 branch back to main trunkGuido van Rossum1994-08-011-1/+1
|
* * timemodule.c: Add hack for Solaris 2.Guido van Rossum1993-11-231-2/+0
| | | | | | | | | | | | | | | * posixmodule.c: don't prototype getcwd() -- it's not portable... * mappingobject.c: double-check validity of last_name_char in dict{lookup,insert,remove}. * arraymodule.c: need memmove only for non-STDC Suns. * Makefile: comment out HTML_LIBS and XT_USE by default * pythonmain.c: don't prototype getopt() -- it's not standardized * socketmodule.c: cast flags arg to {get,set}sockopt() and addrbuf arg to recvfrom() to (ANY*). * pythonrun.c (initsigs): fix prototype, make it static * intobject.c (LONG_BIT): only #define it if not already defined * classobject.[ch]: remove all references to unused instance_convert() * mappingobject.c (getmappingsize): Don't return NULL in int function.
* * Added support for X11 modules.Guido van Rossum1993-07-281-0/+11
| | | | | | | * Makefile: change location of FORMS library. * posixmodule.c: turn #if 0 into #ifdef MSDOS (stuff in unistd.h or not) * Almost all .h files: added CPP magic to avoid duplicate inclusions and to support inclusion from C++.
* * Lots of small changes related to access.Guido van Rossum1993-05-211-5/+7
| | | | | | | * Added "access *: ...", made access work for class methods. * Introduced subclass check: make sure that when calling ClassName.methodname(instance, ...), the instance is an instance of ClassName or of a subclass thereof (this might break some old code!)
* Access checks now work, at least for instance data (not for methodsGuido van Rossum1993-05-201-1/+11
| | | | | | | yet). The class is now passed to eval_code and stored in the current frame. It is also stored in instance method objects. An "unbound" instance method is now returned when a function is retrieved through "classname.funcname", which when called passes the class to eval_code.
* Several changes in one:Guido van Rossum1993-05-191-1/+1
| | | | | | | | | | | | | | | | (1) dictionaries/mappings now have attributes values() and items() as well as keys(); at the C level, use the new function mappinggetnext() to iterate over a dictionary. (2) "class C(): ..." is now illegal; you must write "class C: ...". (3) Class objects now know their own name (finally!); and minor improvements to the way how classes, functions and methods are represented as strings. (4) Added an "access" statement and semantics. (This is still experimental -- as long as you don't use the keyword 'access' nothing should be changed.)
* * Changed all copyright messages to include 1993.Guido van Rossum1993-03-291-2/+2
| | | | | | | | | | | | | | | | | * 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
* * classobject.[ch], {float,long,int}object.c, bltinmodule.c:Guido van Rossum1992-08-141-1/+0
| | | | | | coercion is now completely generic. * ceval.c: for instances, don't coerce for + and *; * reverses arguments if left one is non-instance numeric and right one sequence.
* Changes so that user-defined classes can implement operations invokedGuido van Rossum1992-08-121-0/+3
| | | | | by special syntax: you can now define your own numbers, sequences and mappings.
* Copyright for 1992 addedGuido van Rossum1992-04-051-1/+1
|
* newclassobject gets a third parameter (optional class name)Guido van Rossum1991-10-201-1/+1
|
* Renamed class members to instances and class methods to instance methodsGuido van Rossum1991-05-051-6/+6
| | | | ,.
* Changed 'class member' to 'instance'.Guido van Rossum1991-04-041-3/+3
|
* Added copyright notice.Guido van Rossum1991-02-191-0/+24
|
* "Compiling" versionGuido van Rossum1990-12-201-1/+1
|
* Initial revisionGuido van Rossum1990-10-141-0/+20