<!DOCTYPE html PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
<link rel=
"STYLESHEET" href=
"api.css" type='text/css'
/>
<link rel=
"SHORTCUT ICON" href=
"../icons/pyfav.png" type=
"image/png" />
<link rel='start' href='../index.html' title='Python Documentation Index'
/>
<link rel=
"first" href=
"api.html" title='Python/C API Reference Manual'
/>
<link rel='contents' href='contents.html'
title=
"Contents" />
<link rel='index' href='genindex.html' title='Index'
/>
<link rel='last' href='about.html' title='About this document...'
/>
<link rel='help' href='about.html' title='About this document...'
/>
<link rel=
"next" href=
"noneObject.html" />
<link rel=
"prev" href=
"fundamental.html" />
<link rel=
"parent" href=
"fundamental.html" />
<link rel=
"next" href=
"noneObject.html" />
<meta name='aesop' content='information'
/>
<title>7.1.1 Type Objects
</title>
<div id='top-navigation-panel' xml:id='top-navigation-panel'
>
<table align=
"center" width=
"100%" cellpadding=
"0" cellspacing=
"2">
<td class='online-navigation'
><a rel=
"prev" title=
"7.1 Fundamental Objects"
href=
"fundamental.html"><img src='../icons/previous.png'
border='
0' height='
32' alt='Previous Page' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"parent" title=
"7.1 Fundamental Objects"
href=
"fundamental.html"><img src='../icons/up.png'
border='
0' height='
32' alt='Up One Level' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"next" title=
"7.1.2 The None Object"
href=
"noneObject.html"><img src='../icons/next.png'
border='
0' height='
32' alt='Next Page' width='
32'
/></A></td>
<td align=
"center" width=
"100%">Python/C API Reference Manual
</td>
<td class='online-navigation'
><a rel=
"contents" title=
"Table of Contents"
href=
"contents.html"><img src='../icons/contents.png'
border='
0' height='
32' alt='Contents' width='
32'
/></A></td>
<td class='online-navigation'
><img src='../icons/blank.png'
border='
0' height='
32' alt='' width='
32'
/></td>
<td class='online-navigation'
><a rel=
"index" title=
"Index"
href=
"genindex.html"><img src='../icons/index.png'
border='
0' height='
32' alt='Index' width='
32'
/></A></td>
<div class='online-navigation'
>
<b class=
"navlabel">Previous:
</b>
<a class=
"sectref" rel=
"prev" href=
"fundamental.html">7.1 Fundamental Objects
</A>
<b class=
"navlabel">Up:
</b>
<a class=
"sectref" rel=
"parent" href=
"fundamental.html">7.1 Fundamental Objects
</A>
<b class=
"navlabel">Next:
</b>
<a class=
"sectref" rel=
"next" href=
"noneObject.html">7.1.2 The None Object
</A>
<!--End of Navigation Panel-->
<H2><A NAME=
"SECTION009110000000000000000"></A><A NAME=
"typeObjects"></A>
<a id='l2h-
352' xml:id='l2h-
352'
></a><dl><dt><b><tt class=
"ctype"><a id='l2h-
353' xml:id='l2h-
353'
>PyTypeObject
</a></tt></b></dt>
The C structure of the objects used to describe built-in types.
<dl><dt>PyObject*
<b><tt id='l2h-
354' xml:id='l2h-
354'
class=
"cdata">PyType_Type
</tt></b></dt>
This is the type object for type objects; it is the same object as
<code>types.TypeType
</code> in the Python layer.
<a id='l2h-
356' xml:id='l2h-
356'
></a></dd></dl>
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>int
<b><tt id='l2h-
357' xml:id='l2h-
357'
class=
"cfunction">PyType_Check
</tt></b>(
</nobr></td><td>PyObject *
<var>o
</var>)
</td></tr></table></dt>
Return true if the object
<var>o
</var> is a type object, including
instances of types derived from the standard type object. Return
false in all other cases.
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>int
<b><tt id='l2h-
358' xml:id='l2h-
358'
class=
"cfunction">PyType_CheckExact
</tt></b>(
</nobr></td><td>PyObject *
<var>o
</var>)
</td></tr></table></dt>
Return true if the object
<var>o
</var> is a type object, but not a
subtype of the standard type object. Return false in all other
<span class=
"versionnote">New in version
2.2.
</span>
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>int
<b><tt id='l2h-
359' xml:id='l2h-
359'
class=
"cfunction">PyType_HasFeature
</tt></b>(
</nobr></td><td>PyObject *
<var>o
</var>, int
<var>feature
</var>)
</td></tr></table></dt>
Return true if the type object
<var>o
</var> sets the feature
<var>feature
</var>. Type features are denoted by single bit flags.
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>int
<b><tt id='l2h-
360' xml:id='l2h-
360'
class=
"cfunction">PyType_IS_GC
</tt></b>(
</nobr></td><td>PyObject *
<var>o
</var>)
</td></tr></table></dt>
Return true if the type object includes support for the cycle
detector; this tests the type flag
<tt class=
"constant">Py_TPFLAGS_HAVE_GC
</tt>.
<span class=
"versionnote">New in version
2.0.
</span>
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>int
<b><tt id='l2h-
361' xml:id='l2h-
361'
class=
"cfunction">PyType_IsSubtype
</tt></b>(
</nobr></td><td>PyTypeObject *
<var>a
</var>, PyTypeObject *
<var>b
</var>)
</td></tr></table></dt>
Return true if
<var>a
</var> is a subtype of
<var>b
</var>.
<span class=
"versionnote">New in version
2.2.
</span>
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>PyObject*
<b><tt id='l2h-
362' xml:id='l2h-
362'
class=
"cfunction">PyType_GenericAlloc
</tt></b>(
</nobr></td><td>PyTypeObject *
<var>type
</var>,
int
<var>nitems
</var>)
</td></tr></table></dt>
<div class=
"refcount-info">
<span class=
"label">Return value:
</span>
<span class=
"value">New reference.
</span>
<span class=
"versionnote">New in version
2.2.
</span>
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>PyObject*
<b><tt id='l2h-
363' xml:id='l2h-
363'
class=
"cfunction">PyType_GenericNew
</tt></b>(
</nobr></td><td>PyTypeObject *
<var>type
</var>,
PyObject *
<var>args
</var>, PyObject *
<var>kwds
</var>)
</td></tr></table></dt>
<div class=
"refcount-info">
<span class=
"label">Return value:
</span>
<span class=
"value">New reference.
</span>
<span class=
"versionnote">New in version
2.2.
</span>
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline"><td><nobr>int
<b><tt id='l2h-
364' xml:id='l2h-
364'
class=
"cfunction">PyType_Ready
</tt></b>(
</nobr></td><td>PyTypeObject *
<var>type
</var>)
</td></tr></table></dt>
Finalize a type object. This should be called on all type objects
to finish their initialization. This function is responsible for
adding inherited slots from a type's base class. Return
<code>0</code>
on success, or return
<code>-
1</code> and sets an exception on error.
<span class=
"versionnote">New in version
2.2.
</span>
<div class='online-navigation'
>
<table align=
"center" width=
"100%" cellpadding=
"0" cellspacing=
"2">
<td class='online-navigation'
><a rel=
"prev" title=
"7.1 Fundamental Objects"
href=
"fundamental.html"><img src='../icons/previous.png'
border='
0' height='
32' alt='Previous Page' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"parent" title=
"7.1 Fundamental Objects"
href=
"fundamental.html"><img src='../icons/up.png'
border='
0' height='
32' alt='Up One Level' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"next" title=
"7.1.2 The None Object"
href=
"noneObject.html"><img src='../icons/next.png'
border='
0' height='
32' alt='Next Page' width='
32'
/></A></td>
<td align=
"center" width=
"100%">Python/C API Reference Manual
</td>
<td class='online-navigation'
><a rel=
"contents" title=
"Table of Contents"
href=
"contents.html"><img src='../icons/contents.png'
border='
0' height='
32' alt='Contents' width='
32'
/></A></td>
<td class='online-navigation'
><img src='../icons/blank.png'
border='
0' height='
32' alt='' width='
32'
/></td>
<td class='online-navigation'
><a rel=
"index" title=
"Index"
href=
"genindex.html"><img src='../icons/index.png'
border='
0' height='
32' alt='Index' width='
32'
/></A></td>
<div class='online-navigation'
>
<b class=
"navlabel">Previous:
</b>
<a class=
"sectref" rel=
"prev" href=
"fundamental.html">7.1 Fundamental Objects
</A>
<b class=
"navlabel">Up:
</b>
<a class=
"sectref" rel=
"parent" href=
"fundamental.html">7.1 Fundamental Objects
</A>
<b class=
"navlabel">Next:
</b>
<a class=
"sectref" rel=
"next" href=
"noneObject.html">7.1.2 The None Object
</A>
<span class=
"release-info">Release
2.4.2, documentation updated on
28 September
2005.
</span>
<!--End of Navigation Panel-->
See
<i><a href=
"about.html">About this document...
</a></i> for information on suggesting changes.