Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / tools / src / nas,5.n2.os.2 / lib / python / html / python / api / intObjects.html
CommitLineData
86530b38
AT
1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3<head>
4<link rel="STYLESHEET" href="api.css" type='text/css' />
5<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
6<link rel='start' href='../index.html' title='Python Documentation Index' />
7<link rel="first" href="api.html" title='Python/C API Reference Manual' />
8<link rel='contents' href='contents.html' title="Contents" />
9<link rel='index' href='genindex.html' title='Index' />
10<link rel='last' href='about.html' title='About this document...' />
11<link rel='help' href='about.html' title='About this document...' />
12<link rel="next" href="boolObjects.html" />
13<link rel="prev" href="numericObjects.html" />
14<link rel="parent" href="numericObjects.html" />
15<link rel="next" href="boolObjects.html" />
16<meta name='aesop' content='information' />
17<title>7.2.1 Plain Integer Objects </title>
18</head>
19<body>
20<DIV CLASS="navigation">
21<div id='top-navigation-panel' xml:id='top-navigation-panel'>
22<table align="center" width="100%" cellpadding="0" cellspacing="2">
23<tr>
24<td class='online-navigation'><a rel="prev" title="7.2 Numeric Objects"
25 href="numericObjects.html"><img src='../icons/previous.png'
26 border='0' height='32' alt='Previous Page' width='32' /></A></td>
27<td class='online-navigation'><a rel="parent" title="7.2 Numeric Objects"
28 href="numericObjects.html"><img src='../icons/up.png'
29 border='0' height='32' alt='Up One Level' width='32' /></A></td>
30<td class='online-navigation'><a rel="next" title="7.2.2 Boolean Objects"
31 href="boolObjects.html"><img src='../icons/next.png'
32 border='0' height='32' alt='Next Page' width='32' /></A></td>
33<td align="center" width="100%">Python/C API Reference Manual</td>
34<td class='online-navigation'><a rel="contents" title="Table of Contents"
35 href="contents.html"><img src='../icons/contents.png'
36 border='0' height='32' alt='Contents' width='32' /></A></td>
37<td class='online-navigation'><img src='../icons/blank.png'
38 border='0' height='32' alt='' width='32' /></td>
39<td class='online-navigation'><a rel="index" title="Index"
40 href="genindex.html"><img src='../icons/index.png'
41 border='0' height='32' alt='Index' width='32' /></A></td>
42</tr></table>
43<div class='online-navigation'>
44<b class="navlabel">Previous:</b>
45<a class="sectref" rel="prev" href="numericObjects.html">7.2 Numeric Objects</A>
46<b class="navlabel">Up:</b>
47<a class="sectref" rel="parent" href="numericObjects.html">7.2 Numeric Objects</A>
48<b class="navlabel">Next:</b>
49<a class="sectref" rel="next" href="boolObjects.html">7.2.2 Boolean Objects</A>
50</div>
51<hr /></div>
52</DIV>
53<!--End of Navigation Panel-->
54
55<H2><A NAME="SECTION009210000000000000000"></A><A NAME="intObjects"></A>
56<BR>
577.2.1 Plain Integer Objects
58</H2>
59
60<P>
61<a id='l2h-369' xml:id='l2h-369'></a><dl><dt><b><tt class="ctype"><a id='l2h-370' xml:id='l2h-370'>PyIntObject</a></tt></b></dt>
62<dd>
63 This subtype of <tt class="ctype">PyObject</tt> represents a Python integer
64 object.
65</dl>
66
67<P>
68<dl><dt>PyTypeObject <b><tt id='l2h-371' xml:id='l2h-371' class="cdata">PyInt_Type</tt></b></dt>
69<dd>
70 This instance of <tt class="ctype">PyTypeObject</tt> represents the Python plain
71 integer type. This is the same object as <code>types.IntType</code>.
72 <a id='l2h-373' xml:id='l2h-373'></a></dd></dl>
73
74<P>
75<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>int&nbsp;<b><tt id='l2h-374' xml:id='l2h-374' class="cfunction">PyInt_Check</tt></b>(</nobr></td><td>PyObject *<var>o</var>)</td></tr></table></dt>
76<dd>
77 Return true if <var>o</var> is of type <tt class="cdata">PyInt_Type</tt> or a subtype
78 of <tt class="cdata">PyInt_Type</tt>.
79
80<span class="versionnote">Changed in version 2.2:
81Allowed subtypes to be accepted.</span>
82
83</dd></dl>
84
85<P>
86<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>int&nbsp;<b><tt id='l2h-375' xml:id='l2h-375' class="cfunction">PyInt_CheckExact</tt></b>(</nobr></td><td>PyObject *<var>o</var>)</td></tr></table></dt>
87<dd>
88 Return true if <var>o</var> is of type <tt class="cdata">PyInt_Type</tt>, but not a
89 subtype of <tt class="cdata">PyInt_Type</tt>.
90
91<span class="versionnote">New in version 2.2.</span>
92
93</dd></dl>
94
95<P>
96<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>PyObject*&nbsp;<b><tt id='l2h-376' xml:id='l2h-376' class="cfunction">PyInt_FromString</tt></b>(</nobr></td><td>char *<var>str</var>, char **<var>pend</var>,
97 int <var>base</var>)</td></tr></table></dt>
98<dd>
99 Return a new <tt class="ctype">PyIntObject</tt> or <tt class="ctype">PyLongObject</tt> based on the
100 string value in <var>str</var>, which is interpreted according to the radix in
101 <var>base</var>. If <var>pend</var> is non-<tt class="constant">NULL</tt>, <code>*<var>pend</var></code> will point to
102 the first character in <var>str</var> which follows the representation of the
103 number. If <var>base</var> is <code>0</code>, the radix will be determined based on
104 the leading characters of <var>str</var>: if <var>str</var> starts with <code>'0x'</code>
105 or <code>'0X'</code>, radix 16 will be used; if <var>str</var> starts with
106 <code>'0'</code>, radix 8 will be used; otherwise radix 10 will be used. If
107 <var>base</var> is not <code>0</code>, it must be between <code>2</code> and <code>36</code>,
108 inclusive. Leading spaces are ignored. If there are no digits,
109 <tt class="exception">ValueError</tt> will be raised. If the string represents a number
110 too large to be contained within the machine's <tt class="ctype">long int</tt> type and
111 overflow warnings are being suppressed, a <tt class="ctype">PyLongObject</tt> will be
112 returned. If overflow warnings are not being suppressed, <tt class="constant">NULL</tt> will be
113 returned in this case.
114</dd></dl>
115
116<P>
117<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>PyObject*&nbsp;<b><tt id='l2h-377' xml:id='l2h-377' class="cfunction">PyInt_FromLong</tt></b>(</nobr></td><td>long <var>ival</var>)</td></tr></table></dt>
118<dd>
119<div class="refcount-info">
120 <span class="label">Return value:</span>
121 <span class="value">New reference.</span>
122</div>
123 Create a new integer object with a value of <var>ival</var>.
124
125<P>
126The current implementation keeps an array of integer objects for all
127 integers between <code>-1</code> and <code>100</code>, when you create an int in
128 that range you actually just get back a reference to the existing
129 object. So it should be possible to change the value of <code>1</code>. I
130 suspect the behaviour of Python in this case is undefined. :-)
131</dd></dl>
132
133<P>
134<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>long&nbsp;<b><tt id='l2h-378' xml:id='l2h-378' class="cfunction">PyInt_AsLong</tt></b>(</nobr></td><td>PyObject *<var>io</var>)</td></tr></table></dt>
135<dd>
136 Will first attempt to cast the object to a <tt class="ctype">PyIntObject</tt>, if
137 it is not already one, and then return its value.
138</dd></dl>
139
140<P>
141<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>long&nbsp;<b><tt id='l2h-379' xml:id='l2h-379' class="cfunction">PyInt_AS_LONG</tt></b>(</nobr></td><td>PyObject *<var>io</var>)</td></tr></table></dt>
142<dd>
143 Return the value of the object <var>io</var>. No error checking is
144 performed.
145</dd></dl>
146
147<P>
148<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>unsigned long&nbsp;<b><tt id='l2h-380' xml:id='l2h-380' class="cfunction">PyInt_AsUnsignedLongMask</tt></b>(</nobr></td><td>PyObject *<var>io</var>)</td></tr></table></dt>
149<dd>
150 Will first attempt to cast the object to a <tt class="ctype">PyIntObject</tt> or
151 <tt class="ctype">PyLongObject</tt>, if it is not already one, and then return its
152 value as unsigned long. This function does not check for overflow.
153
154<span class="versionnote">New in version 2.3.</span>
155
156</dd></dl>
157
158<P>
159<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>unsigned long long&nbsp;<b><tt id='l2h-381' xml:id='l2h-381' class="cfunction">PyInt_AsUnsignedLongLongMask</tt></b>(</nobr></td><td>PyObject *<var>io</var>)</td></tr></table></dt>
160<dd>
161 Will first attempt to cast the object to a <tt class="ctype">PyIntObject</tt> or
162 <tt class="ctype">PyLongObject</tt>, if it is not already one, and then return its
163 value as unsigned long long, without checking for overflow.
164
165<span class="versionnote">New in version 2.3.</span>
166
167</dd></dl>
168
169<P>
170<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline"><td><nobr>long&nbsp;<b><tt id='l2h-382' xml:id='l2h-382' class="cfunction">PyInt_GetMax</tt></b>(</nobr></td><td>)</td></tr></table></dt>
171<dd>
172 Return the system's idea of the largest integer it can handle
173 (<tt class="constant">LONG_MAX</tt><a id='l2h-383' xml:id='l2h-383'></a>, as defined in the system
174 header files).
175</dd></dl>
176
177<P>
178
179<DIV CLASS="navigation">
180<div class='online-navigation'>
181<p></p><hr />
182<table align="center" width="100%" cellpadding="0" cellspacing="2">
183<tr>
184<td class='online-navigation'><a rel="prev" title="7.2 Numeric Objects"
185 href="numericObjects.html"><img src='../icons/previous.png'
186 border='0' height='32' alt='Previous Page' width='32' /></A></td>
187<td class='online-navigation'><a rel="parent" title="7.2 Numeric Objects"
188 href="numericObjects.html"><img src='../icons/up.png'
189 border='0' height='32' alt='Up One Level' width='32' /></A></td>
190<td class='online-navigation'><a rel="next" title="7.2.2 Boolean Objects"
191 href="boolObjects.html"><img src='../icons/next.png'
192 border='0' height='32' alt='Next Page' width='32' /></A></td>
193<td align="center" width="100%">Python/C API Reference Manual</td>
194<td class='online-navigation'><a rel="contents" title="Table of Contents"
195 href="contents.html"><img src='../icons/contents.png'
196 border='0' height='32' alt='Contents' width='32' /></A></td>
197<td class='online-navigation'><img src='../icons/blank.png'
198 border='0' height='32' alt='' width='32' /></td>
199<td class='online-navigation'><a rel="index" title="Index"
200 href="genindex.html"><img src='../icons/index.png'
201 border='0' height='32' alt='Index' width='32' /></A></td>
202</tr></table>
203<div class='online-navigation'>
204<b class="navlabel">Previous:</b>
205<a class="sectref" rel="prev" href="numericObjects.html">7.2 Numeric Objects</A>
206<b class="navlabel">Up:</b>
207<a class="sectref" rel="parent" href="numericObjects.html">7.2 Numeric Objects</A>
208<b class="navlabel">Next:</b>
209<a class="sectref" rel="next" href="boolObjects.html">7.2.2 Boolean Objects</A>
210</div>
211</div>
212<hr />
213<span class="release-info">Release 2.4.2, documentation updated on 28 September 2005.</span>
214</DIV>
215<!--End of Navigation Panel-->
216<ADDRESS>
217See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
218</ADDRESS>
219</BODY>
220</HTML>