aboutsummaryrefslogtreecommitdiffstats
path: root/docs/ProgrammersManual.html
diff options
context:
space:
mode:
authorReid Spencer <rspencer@reidspencer.com>2004-11-01 09:16:30 +0000
committerReid Spencer <rspencer@reidspencer.com>2004-11-01 09:16:30 +0000
commitc7d1d8256ee319bb6fe70f112a502db1e06dbb7e (patch)
tree24b40c5c0966e61e3dc356e7ee3163cddbcbc62a /docs/ProgrammersManual.html
parentfe8f4fff15acc25fa9068253995b0e695c8e001b (diff)
downloadexternal_llvm-c7d1d8256ee319bb6fe70f112a502db1e06dbb7e.zip
external_llvm-c7d1d8256ee319bb6fe70f112a502db1e06dbb7e.tar.gz
external_llvm-c7d1d8256ee319bb6fe70f112a502db1e06dbb7e.tar.bz2
Attempt HTML 4.01 Strict compliance.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17399 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/ProgrammersManual.html')
-rw-r--r--docs/ProgrammersManual.html76
1 files changed, 39 insertions, 37 deletions
diff --git a/docs/ProgrammersManual.html b/docs/ProgrammersManual.html
index 5d10882..7c6bd15 100644
--- a/docs/ProgrammersManual.html
+++ b/docs/ProgrammersManual.html
@@ -1771,42 +1771,43 @@ types.</p>
<li><tt>isLosslesslyConvertableTo (const Type *Ty) const</tt>: Return true if
this type can be converted to 'Ty' without any reinterpretation of bits. For
example, uint to int or one pointer type to another.</li>
+</ul>
+</div>
-<br>
- <p>Derived Types</p>
-
+<!-- _______________________________________________________________________ -->
+<div class="doc_subsubsection">
+ <a name="m_Value">Important Derived Types</a>
+</div>
+<div class="doc_text">
+<ul>
+ <li>SequentialType : This is subclassed by ArrayType and PointerType
<ul>
- <li>SequentialType : This is subclassed by ArrayType and PointerType
- <ul>
- <li><tt>const Type * getElementType() const</tt>: Returns the type of
-each of the elements in the sequential type. </li>
- </ul>
- </li>
- <li>ArrayType : This is a subclass of SequentialType and defines
-interface for array types.
- <ul>
- <li><tt>unsigned getNumElements() const</tt>: Returns the number of
-elements in the array. </li>
- </ul>
- </li>
- <li>PointerType : Subclass of SequentialType for pointer types. </li>
- <li>StructType : subclass of DerivedTypes for struct types </li>
- <li>FunctionType : subclass of DerivedTypes for function types.
- <ul>
- <li><tt>bool isVarArg() const</tt>: Returns true if its a vararg
- function</li>
- <li><tt> const Type * getReturnType() const</tt>: Returns the
- return type of the function.</li>
- <li><tt>const Type * getParamType (unsigned i)</tt>: Returns
- the type of the ith parameter.</li>
- <li><tt> const unsigned getNumParams() const</tt>: Returns the
- number of formal parameters.</li>
- </ul>
- </li>
+ <li><tt>const Type * getElementType() const</tt>: Returns the type of each
+ of the elements in the sequential type. </li>
+ </ul>
+ </li>
+ <li>ArrayType : This is a subclass of SequentialType and defines interface for
+ array types.
+ <ul>
+ <li><tt>unsigned getNumElements() const</tt>: Returns the number of
+ elements in the array. </li>
+ </ul>
+ </li>
+ <li>PointerType : Subclass of SequentialType for pointer types. </li>
+ <li>StructType : subclass of DerivedTypes for struct types </li>
+ <li>FunctionType : subclass of DerivedTypes for function types.
+ <ul>
+ <li><tt>bool isVarArg() const</tt>: Returns true if its a vararg
+ function</li>
+ <li><tt> const Type * getReturnType() const</tt>: Returns the
+ return type of the function.</li>
+ <li><tt>const Type * getParamType (unsigned i)</tt>: Returns
+ the type of the ith parameter.</li>
+ <li><tt> const unsigned getNumParams() const</tt>: Returns the
+ number of formal parameters.</li>
</ul>
</li>
</ul>
-
</div>
<!-- ======================================================================= -->
@@ -1946,32 +1947,33 @@ three idioms worth pointing out:</p>
<tr><th>Units</th><th>Iterator</th><th>Idiom</th></tr>
<tr>
<td align="left">Planes Of name/Value maps</td><td>PI</td>
- <td align="left"><tt><pre>
+ <td align="left"><pre><tt>
for (SymbolTable::plane_const_iterator PI = ST.plane_begin(),
PE = ST.plane_end(); PI != PE; ++PI ) {
PI-&gt;first // This is the Type* of the plane
PI-&gt;second // This is the SymbolTable::ValueMap of name/Value pairs
- </pre></tt></td>
+ </tt></pre></td>
</tr>
<tr>
<td align="left">All name/Type Pairs</td><td>TI</td>
- <td align="left"><tt><pre>
+ <td align="left"><pre><tt>
for (SymbolTable::type_const_iterator TI = ST.type_begin(),
TE = ST.type_end(); TI != TE; ++TI )
TI-&gt;first // This is the name of the type
TI-&gt;second // This is the Type* value associated with the name
- </pre></tt></td>
+ </tt></pre></td>
</tr>
<tr>
<td align="left">name/Value pairs in a plane</td><td>VI</td>
- <td align="left"><tt><pre>
+ <td align="left"><pre><tt>
for (SymbolTable::value_const_iterator VI = ST.value_begin(SomeType),
VE = ST.value_end(SomeType); VI != VE; ++VI )
VI-&gt;first // This is the name of the Value
VI-&gt;second // This is the Value* value associated with the name
- </pre></tt></td>
+ </tt></pre></td>
</tr>
</table>
+
<p>Using the recommended iterator names and idioms will help you avoid
making mistakes. Of particular note, make sure that whenever you use
value_begin(SomeType) that you always compare the resulting iterator