diff options
Diffstat (limited to 'docs/doxygen/nel/a02924.html')
-rw-r--r-- | docs/doxygen/nel/a02924.html | 174 |
1 files changed, 174 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02924.html b/docs/doxygen/nel/a02924.html new file mode 100644 index 00000000..89084ba6 --- /dev/null +++ b/docs/doxygen/nel/a02924.html @@ -0,0 +1,174 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>NeL: NLAISCRIPT::CMethodContextDebug class Reference</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<!-- Generated by Doxygen 1.3.6 --> +<div class="qindex"> <form class="search" action="search.php" method="get"> +<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NLAISCRIPT::CMethodContextDebug Class Reference</h1><code>#include <<a class="el" href="a06125.html">opcode_call_method.h</a>></code> +<p> +<p>Inheritance diagram for NLAISCRIPT::CMethodContextDebug: +<p><center><img src="a02924.png" usemap="#NLAISCRIPT::CMethodContextDebug_map" border="0" alt=""></center> +<map name="NLAISCRIPT::CMethodContextDebug_map"> +<area href="a03866.html" alt="NLAISCRIPT::IMethodContext" shape="rect" coords="0,0,219,24"> +</map> +<table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a03866.html">IMethodContext</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02924.html#NLAISCRIPT_1_1CMethodContextDebuga0">clone</a> () const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="a02924.html#NLAISCRIPT_1_1CMethodContextDebuga1">loadContext</a> (<a class="el" href="a02374.html">CCodeContext</a> &context)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="a02924.html#NLAISCRIPT_1_1CMethodContextDebuga2">saveContext</a> (<a class="el" href="a02374.html">CCodeContext</a> &context)</td></tr> + +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NLAISCRIPT_1_1CMethodContextDebuga0" doxytag="NLAISCRIPT::CMethodContextDebug::clone" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a03866.html">IMethodContext</a> * NLAISCRIPT::CMethodContextDebug::clone </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Server method need this, in particular on the copy constructor where it is easy to clone param to init attribut. +<p> +Implements <a class="el" href="a03866.html#NLAISCRIPT_1_1IMethodContexta0">NLAISCRIPT::IMethodContext</a>. +<p> +Definition at line <a class="el" href="a06124.html#l00075">75</a> of file <a class="el" href="a06124.html">opcode_call_method.cpp</a>. +<p> +<div class="fragment"><pre>00076 { +00077 <span class="keywordflow">return</span> <span class="keyword">new</span> CMethodContextDebug(); +00078 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLAISCRIPT_1_1CMethodContextDebuga1" doxytag="NLAISCRIPT::CMethodContextDebug::loadContext" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLAISCRIPT::CMethodContextDebug::loadContext </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02374.html">CCodeContext</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>context</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Allow to reload old context before the return of method. +<p> +Implements <a class="el" href="a03866.html#NLAISCRIPT_1_1IMethodContexta1">NLAISCRIPT::IMethodContext</a>. +<p> +Definition at line <a class="el" href="a06124.html#l00103">103</a> of file <a class="el" href="a06124.html">opcode_call_method.cpp</a>. +<p> +References <a class="el" href="a05572.html#l00347">NLAISCRIPT::CCodeContext::ContextDebug</a>, <a class="el" href="a05572.html#l00337">NLAISCRIPT::CCodeContext::Heap</a>, <a class="el" href="a05610.html#l00062">NLAISCRIPT::CContextDebug::HeapDebug</a>, <a class="el" href="a05572.html#l00345">NLAISCRIPT::CCodeContext::Param</a>, <a class="el" href="a05386.html#l00086">NLAIC::IPointerGestion::release()</a>, <a class="el" href="a05572.html#l00272">NLAISCRIPT::CStackPointer::restoreShift()</a>, and <a class="el" href="a05572.html#l00253">NLAISCRIPT::CStackPointer::restoreStack()</a>. +<p> +<div class="fragment"><pre>00104 { +00105 context.Heap.restoreShift(); +00106 context.Heap.restoreStack(); +00107 context.ContextDebug.HeapDebug.restoreShift(); +00108 <a class="code" href="a02149.html">NLAIAGENT::IObjectIA</a> *obj = context.Param.back(); +00109 obj-><a class="code" href="a02145.html#NLAIAGENT_1_1VectorTypea46">release</a>(); +00110 context.Param.pop_back(); +00111 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NLAISCRIPT_1_1CMethodContextDebuga2" doxytag="NLAISCRIPT::CMethodContextDebug::saveContext" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NLAISCRIPT::CMethodContextDebug::saveContext </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02374.html">CCodeContext</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>context</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap><code> [virtual]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Allow to save the register, ip pointer .... before method call. +<p> +Implements <a class="el" href="a03866.html#NLAISCRIPT_1_1IMethodContexta2">NLAISCRIPT::IMethodContext</a>. +<p> +Definition at line <a class="el" href="a06124.html#l00080">80</a> of file <a class="el" href="a06124.html">opcode_call_method.cpp</a>. +<p> +References <a class="el" href="a05572.html#l00245">NLAISCRIPT::CStackPointer::addStack()</a>, <a class="el" href="a05572.html#l00347">NLAISCRIPT::CCodeContext::ContextDebug</a>, <a class="el" href="a05572.html#l00337">NLAISCRIPT::CCodeContext::Heap</a>, <a class="el" href="a05610.html#l00062">NLAISCRIPT::CContextDebug::HeapDebug</a>, <a class="el" href="a05386.html#l00080">NLAIC::IPointerGestion::incRef()</a>, <a class="el" href="a05407.html#l00495">NLAIAGENT::CConstIteratorContener::isInEnd()</a>, <a class="el" href="a05572.html#l00345">NLAISCRIPT::CCodeContext::Param</a>, <a class="el" href="a05646.html#l00683">param</a>, <a class="el" href="a05572.html#l00264">NLAISCRIPT::CStackPointer::setShift()</a>, and <a class="el" href="a05572.html#l00335">NLAISCRIPT::CCodeContext::Stack</a>. +<p> +<div class="fragment"><pre>00081 { +00082 <a class="code" href="a02327.html">NLAIAGENT::IBaseGroupType</a> *<a class="code" href="a04223.html#a590">param</a> = (<a class="code" href="a02327.html">NLAIAGENT::IBaseGroupType</a> *)context.Stack[(<span class="keywordtype">int</span>)context.Stack]; +00083 <a class="code" href="a02692.html">NLAIAGENT::CIteratorContener</a> It = <a class="code" href="a04223.html#a590">param</a>->getIterator(); +00084 +00085 <span class="keywordflow">while</span>(!It.<a class="code" href="a02403.html#NLAIAGENT_1_1CIteratorContenera5">isInEnd</a>()) +00086 { +00087 <a class="code" href="a02149.html">NLAIAGENT::IObjectIA</a> *o = (<a class="code" href="a02149.html">NLAIAGENT::IObjectIA</a> *)It++; +00088 o-><a class="code" href="a02145.html#NLAIAGENT_1_1VectorTypea16">incRef</a>(); +00089 context.Heap[(<span class="keywordtype">int</span>)context.Heap] = o; +00090 context.Heap ++; +00091 } +00092 <span class="keywordtype">int</span> bp = (<span class="keywordtype">int</span>)context.Heap; +00093 CVarPStackParam::_Shift += bp; +00094 context.Heap.addStack(<a class="code" href="a04223.html#a590">param</a>->size()); +00095 <span class="keywordtype">int</span> sh = (<span class="keywordtype">int</span>)context.Heap; +00096 context.Heap.setShift(sh); +00097 context.ContextDebug.HeapDebug.setShift(sh); +00098 context.Param.push_back(param); +00099 <a class="code" href="a04223.html#a590">param</a>->incRef(); +00100 context.Stack --; +00101 } +</pre></div> </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a06125.html">opcode_call_method.h</a><li><a class="el" href="a06124.html">opcode_call_method.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 12:04:17 2004 for NeL by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border=0 > +</a>1.3.6 </small></address> +</body> +</html> |