mirror of
https://github.com/python/cpython.git
synced 2025-08-04 17:08:35 +00:00
Made the core toolbox modules carbon-compatible using the new greylist feature of bgen: non-carbon methods are still included in non-carbon MacPython. The issue of backward compatibility of Python code is still open.
Macmodule and macosmodule have also been carbonified. Some functionality is still missing there.
This commit is contained in:
parent
33d1ad28cb
commit
e79dc76f53
35 changed files with 667 additions and 129 deletions
|
@ -141,6 +141,7 @@ static PyObject *GrafObj_getattr(self, name)
|
|||
GrafPortObject *self;
|
||||
char *name;
|
||||
{
|
||||
#ifndef TARGET_API_MAC_CARBON
|
||||
|
||||
{ CGrafPtr itself_color = (CGrafPtr)self->ob_itself;
|
||||
|
||||
|
@ -218,6 +219,7 @@ static PyObject *GrafObj_getattr(self, name)
|
|||
if ( strcmp(name, "_id") == 0 )
|
||||
return Py_BuildValue("l", (long)self->ob_itself);
|
||||
}
|
||||
#endif
|
||||
return Py_FindMethodInChain(&GrafObj_chain, (PyObject *)self, name);
|
||||
}
|
||||
|
||||
|
@ -424,6 +426,7 @@ static PyObject *QDGA_getattr(self, name)
|
|||
QDGlobalsAccessObject *self;
|
||||
char *name;
|
||||
{
|
||||
#ifndef TARGET_API_MAC_CARBON
|
||||
|
||||
if ( strcmp(name, "arrow") == 0 )
|
||||
return PyString_FromStringAndSize((char *)&qd.arrow, sizeof(qd.arrow));
|
||||
|
@ -444,6 +447,7 @@ static PyObject *QDGA_getattr(self, name)
|
|||
if ( strcmp(name, "randSeed") == 0 )
|
||||
return Py_BuildValue("l", &qd.randSeed);
|
||||
|
||||
#endif
|
||||
return Py_FindMethodInChain(&QDGA_chain, (PyObject *)self, name);
|
||||
}
|
||||
|
||||
|
|
|
@ -132,6 +132,7 @@ class MyGRObjectDefinition(GlobalObjectDefinition):
|
|||
Output("return 1;")
|
||||
OutRbrace()
|
||||
def outputGetattrHook(self):
|
||||
Output("#ifndef TARGET_API_MAC_CARBON")
|
||||
Output("""
|
||||
{ CGrafPtr itself_color = (CGrafPtr)self->ob_itself;
|
||||
|
||||
|
@ -209,6 +210,7 @@ class MyGRObjectDefinition(GlobalObjectDefinition):
|
|||
if ( strcmp(name, "_id") == 0 )
|
||||
return Py_BuildValue("l", (long)self->ob_itself);
|
||||
}""")
|
||||
Output("#endif")
|
||||
|
||||
class MyBMObjectDefinition(GlobalObjectDefinition):
|
||||
def outputCheckNewArg(self):
|
||||
|
@ -259,6 +261,7 @@ class QDGlobalsAccessObjectDefinition(ObjectDefinition):
|
|||
pass
|
||||
|
||||
def outputGetattrHook(self):
|
||||
Output("#ifndef TARGET_API_MAC_CARBON")
|
||||
Output("""
|
||||
if ( strcmp(name, "arrow") == 0 )
|
||||
return PyString_FromStringAndSize((char *)&qd.arrow, sizeof(qd.arrow));
|
||||
|
@ -279,6 +282,7 @@ class QDGlobalsAccessObjectDefinition(ObjectDefinition):
|
|||
if ( strcmp(name, "randSeed") == 0 )
|
||||
return Py_BuildValue("l", &qd.randSeed);
|
||||
""")
|
||||
Output("#endif")
|
||||
|
||||
# Create the generator groups and link them
|
||||
module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff, variablestuff)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue