diff options
Diffstat (limited to '')
-rw-r--r-- | docs/doxygen/nel/compilateur_8h-source.html | 479 |
1 files changed, 479 insertions, 0 deletions
diff --git a/docs/doxygen/nel/compilateur_8h-source.html b/docs/doxygen/nel/compilateur_8h-source.html new file mode 100644 index 00000000..bfd522ef --- /dev/null +++ b/docs/doxygen/nel/compilateur_8h-source.html @@ -0,0 +1,479 @@ +<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> +<HTML> +<HEAD> + <TITLE>nevrax.org : docs</TITLE> + <LINK REL=stylesheet TYPE="text/css" HREF="http://www.nevrax.org/inc/css/nevrax.css"> + <link href="doxygen.css" rel="stylesheet" type="text/css"> +</HEAD> +<BODY MARGINHEIGHT="0" MARGINWIDTH="0"> + +<!-- uplinks --> +<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0> + <TR> + <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD WIDTH=140 BGCOLOR=#dddddd><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle> <A CLASS=uplinks HREF=http://www.nevrax.org><b>Home</B></FONT></A> </TD> + <TD><IMG width=6 height=14 SRC="http://www.nevrax.org/inc/img/reddots.gif" ALT="#" VSPACE=2 HSPACE=2 BORDER=0 ></TD><TD VALIGN=middle> <A CLASS=uplinks HREF=http://www.nevrax.com><b>nevrax.com</B></FONT></A> </TD> + </TR> +</TABLE> + +<!-- banner Nevrax --> +<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%> + <TR><TD BGCOLOR="#000000" BACKGROUND="http://www.nevrax.org/inc/img/black_banner.jpg"><A HREF="http://www.nevrax.org"><IMG SRC="http://www.nevrax.org/inc/img/nevrax.gif" WIDTH="170" HEIGHT="45" BORDER=0 ALT="Nevrax" ></A></TD></TR> +</TABLE> + +<!-- main table --> +<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 height=100%> + <TR> + <TD WIDTH=16><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="10" BORDER=0 ALT=""></TD> + <TD WIDTH=140 BGCOLOR=#dddddd VALIGN=TOP ALIGN=middle><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT=""> + + <!------ Begin Box ------> + <TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0 BGCOLOR=black><TR><TD><TABLE border=0 cellspacing=2 cellpadding=0 width=120><tr><TD ALIGN=middle bgcolor=black> + <FONT COLOR=white FACE="sans-serif"><B>Nevrax.org</B></FONT></TD></TR><tr><td colspan=2 bgcolor=#FFFFFF> + <TABLE cellspacing=0 cellpadding=1 border=0> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="Rubrique news"><img width=13 height=15 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-news.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/news/" TITLE="News">News</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Rubrique mail"><img width=15 height=11 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-mail.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/mail/" TITLE="Mailing list archive">Mailing-list</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Rubrique docs"><img width=14 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-docs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/docs/" TITLE="Documentation">Documentation</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="Rubrique cvs"><img width=13 height=17 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-cvs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/cvs/" TITLE="CVS Web">CVS</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Rubrique bugs"><img width=20 height=16 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-bugs.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/bugs/" TITLE="Bugtracking">Bugs</a></td></tr> + <tr><td ALIGN=middle><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="Rubrique license"><img width=18 height=12 hspace=5 border=0 src=http://www.nevrax.org/inc/img/picto-gpl.gif ALT=#></A></td><td><a class='linkbox' href="http://www.nevrax.org/GPL.php3" TITLE="License">License</a></td></tr> + </TABLE> + </TD></TR></TABLE></TD></TR></TABLE> + <!------ End Box ------> + + </TD> + <TD WIDTH=15><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="16" HEIGHT="16" BORDER=0 ALT=""></TD> + <TD ALIGN=left valign=top><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="140" HEIGHT="10" BORDER=0 ALT=""> + +<!-- title --> +<TABLE background="http://www.nevrax.org/inc/img/redline.gif" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td> +<A HREF="http://www.nevrax.org/docs/"><img src="http://www.nevrax.org/inc/img/t_docs.gif" ALT="Docs" HEIGHT=20 BORDER=0></A> +</td><td><IMG SRC="http://www.nevrax.org/inc/img/pixel.gif" WIDTH="1" HEIGHT="1" BORDER=0 ALT=""> +</td></tr></table> + + +<!-- block --> +<TABLE bgcolor="#dddddd" CELLSPACING=0 CELLPADDING=0 BORDER=0 width=100%><tr><td width=1% valign=middle><img width=6 height=14 hspace=2 vspace=2 src="http://www.nevrax.org/inc/img/reddots.gif"></TD> + <TD><B>Documentation</B></TD> + <TD ALIGN=RIGHT> </td> +</tr></table> +<!-- Generated by Doxygen 1.2.14 --> +<center> +<a class="qindex" href="index.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">Compound List</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">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> <a class="qindex" href="pages.html">Related Pages</a> <a class="qindexRef" doxygen="_cgi:http://www.nevrax.org/cgi-bin/nel-search.cgi" href="http://www.nevrax.org/cgi-bin/nel-search.cgi">Search</a> </center> +<hr><h1>compilateur.h</h1><a href="compilateur_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 +00007 <font class="comment">/* Copyright, 2000 Nevrax Ltd.</font> +00008 <font class="comment"> *</font> +00009 <font class="comment"> * This file is part of NEVRAX NEL.</font> +00010 <font class="comment"> * NEVRAX NEL is free software; you can redistribute it and/or modify</font> +00011 <font class="comment"> * it under the terms of the GNU General Public License as published by</font> +00012 <font class="comment"> * the Free Software Foundation; either version 2, or (at your option)</font> +00013 <font class="comment"> * any later version.</font> +00014 <font class="comment"></font> +00015 <font class="comment"> * NEVRAX NEL is distributed in the hope that it will be useful, but</font> +00016 <font class="comment"> * WITHOUT ANY WARRANTY; without even the implied warranty of</font> +00017 <font class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU</font> +00018 <font class="comment"> * General Public License for more details.</font> +00019 <font class="comment"></font> +00020 <font class="comment"> * You should have received a copy of the GNU General Public License</font> +00021 <font class="comment"> * along with NEVRAX NEL; see the file COPYING. If not, write to the</font> +00022 <font class="comment"> * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,</font> +00023 <font class="comment"> * MA 02111-1307, USA.</font> +00024 <font class="comment"> */</font> +00025 +00026 <font class="preprocessor">#ifndef NL_COMPILATEUR_H</font> +00027 <font class="preprocessor"></font><font class="preprocessor">#define NL_COMPILATEUR_H</font> +00028 <font class="preprocessor"></font> +00029 <font class="preprocessor">#include "<a class="code" href="agentpack_8h.html">nel/ai/agent/agentpack.h</a>"</font> +00030 <font class="preprocessor">#include "<a class="code" href="agent__string_8h.html">nel/ai/agent/agent_string.h</a>"</font> +00031 <font class="preprocessor">#include "<a class="code" href="agent__script_8h.html">nel/ai/agent/agent_script.h</a>"</font> +00032 +00033 <font class="preprocessor">#include "<a class="code" href="interpret__object_8h.html">nel/ai/script/interpret_object.h</a>"</font> +00034 <font class="preprocessor">#include "<a class="code" href="interpret__methodes_8h.html">nel/ai/script/interpret_methodes.h</a>"</font> +00035 <font class="preprocessor">#include "<a class="code" href="interpret__object__list_8h.html">nel/ai/script/interpret_object_list.h</a>"</font> +00036 +00037 <font class="comment">//#include "nel/ai/pyserver/pylib.h"</font> +00038 <font class="preprocessor">#include "<a class="code" href="lexsupport_8h.html">nel/ai/script/lexsupport.h</a>"</font> +00039 <font class="preprocessor">#include "<a class="code" href="varstack_8h.html">nel/ai/script/varstack.h</a>"</font> +00040 <font class="preprocessor">#include "<a class="code" href="code__branche__run__debug_8h.html">nel/ai/script/code_branche_run_debug.h</a>"</font> +00041 +00042 <font class="preprocessor">#include "<a class="code" href="codage_8h.html">nel/ai/script/codage.h</a>"</font> +00043 <font class="preprocessor">#include "<a class="code" href="constraint__debug_8h.html">nel/ai/script/constraint_debug.h</a>"</font> +00044 <font class="preprocessor">#include "<a class="code" href="module_8h.html">nel/ai/script/module.h</a>"</font> +00045 <font class="preprocessor">#include "<a class="code" href="lex_8h.html">nel/ai/script/lex.h</a>"</font> +00046 <font class="preprocessor">#include "<a class="code" href="logic_8h.html">nel/ai/logic/logic.h</a>"</font> +00047 <font class="preprocessor">#include "<a class="code" href="fuzzy_8h.html">nel/ai/fuzzy/fuzzy.h</a>"</font> +00048 <font class="preprocessor">#include <fstream.h></font> +00049 +00050 +00051 +00052 <font class="keyword">namespace </font>NLAISCRIPT +00053 { +00054 <font class="keyword">class </font>IConstraint; +00055 +00059 <font class="keyword">enum</font> <a class="code" href="namespaceNLAISCRIPT.html#a51">TVarOfType</a> { +00061 <a class="code" href="namespaceNLAISCRIPT.html#a51a4">varTypeImediate</a>, +00063 <a class="code" href="namespaceNLAISCRIPT.html#a51a5">varTypeMember</a>, +00065 <a class="code" href="namespaceNLAISCRIPT.html#a51a6">varTypeStackMember</a>, +00067 <a class="code" href="namespaceNLAISCRIPT.html#a51a7">varTypeHeapMember</a>, +00069 <a class="code" href="namespaceNLAISCRIPT.html#a51a8">varTypeLocal</a>, +00071 <a class="code" href="namespaceNLAISCRIPT.html#a51a9">varForFunc</a>, +00072 <a class="code" href="namespaceNLAISCRIPT.html#a51a10">varUnknown</a>, +00073 <a class="code" href="namespaceNLAISCRIPT.html#a51a11">varTypeUndef</a> +00074 }; +00075 +<a name="l00082"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html">00082</a> <font class="keyword">struct </font>CFactorType +00083 { +<a name="l00085"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m0">00085</a> <a class="code" href="classNLAIAGENT_1_1IObjetOp.html">NLAIAGENT::IObjetOp</a> *<a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m0">Value</a>; +<a name="l00087"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m1">00087</a> <font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *<a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m1">ValueVar</a>; +<a name="l00088"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m2">00088</a> <a class="code" href="namespaceNLAISCRIPT.html#a51">TVarOfType</a> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m2">VarType</a>; +<a name="l00090"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m3">00090</a> <font class="keywordtype">bool</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m3">IsUsed</a>; +<a name="l00092"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m4">00092</a> <a class="code" href="classstd_1_1list.html">std::list<sint32></a> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m4">Member</a>; +<a name="l00094"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m5">00094</a> <a class="code" href="classstd_1_1list.html">std::list<NLAISCRIPT::CStringType ></a> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m5">MemberName</a>; +<a name="l00096"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m6">00096</a> IOpType *<a class="code" href="structNLAISCRIPT_1_1CFactorType.html#m6">TypeStack</a>; +00097 <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a0">CFactorType</a>(); +00098 +00099 <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a0">CFactorType</a>(<font class="keyword">const</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a0">CFactorType</a> &<a class="code" href="driver__opengl__extension__def_8h.html#a368">v</a>); +00100 +<a name="l00101"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a2">00101</a> <font class="keyword">virtual</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a2">~CFactorType</a>() +00102 { +00103 <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a3">del</a>(); +00104 } +00105 +00106 <font class="keywordtype">void</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a3">del</a>(); +00107 +00108 <font class="keywordtype">void</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a4">set</a>(<font class="keyword">const</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a0">CFactorType</a> &<a class="code" href="driver__opengl__extension__def_8h.html#a368">v</a>); +00109 +<a name="l00110"></a><a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a5">00110</a> <font class="keyword">const</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a0">CFactorType</a> *<a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a5">clone</a>()<font class="keyword"> const </font> +00111 <font class="keyword"> </font>{ +00112 <font class="keywordflow">return</font> <font class="keyword">new</font> <a class="code" href="structNLAISCRIPT_1_1CFactorType.html#a0">CFactorType</a>(*<font class="keyword">this</font>); +00113 } +00114 }; +00115 +00116 <font class="keyword">class </font>IOpType; +00117 +<a name="l00125"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html">00125</a> <font class="keyword">class </font>CCompilateur: <font class="keyword">public</font> yyFlexLexer +00126 { +00127 <font class="keyword">private</font>: +<a name="l00129"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#u0">00129</a> <font class="keyword">typedef</font> std::pair<NLAIAGENT::IVarName *,NLAIAGENT::IObjectIA *> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#u0">pairType</a>; +00130 +00131 <font class="keyword">private</font>: +<a name="l00133"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">00133</a> std::istrstream* <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a>; +<a name="l00135"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o1">00135</a> <a class="code" href="classNLAIC_1_1IIO.html">NLAIC::IIO</a>& <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o1">_Iterface</a>; +<a name="l00137"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o2">00137</a> CFactorType <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o2">_LastFact</a>; +<a name="l00139"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o3">00139</a> IBlock* <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o3">_LastBloc</a>; +<a name="l00141"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o4">00141</a> <a class="code" href="classNLAIAGENT_1_1CStringVarName.html">NLAIAGENT::CStringVarName</a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o4">_LastString</a>,<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o5">_LastBaseObjectDef</a>; +<a name="l00142"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o6">00142</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o6">_BaseObjectDef</a>; +<a name="l00144"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o7">00144</a> CListClass <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o7">_SelfClass</a>; +<a name="l00146"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o8">00146</a> <a class="code" href="classstd_1_1list.html">std::list<IBlock*></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o8">_LastSaveBloc</a>,<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o9">_LastBloc1</a>,<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o10">_LastBloc2</a>,<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o11">_LastBloc3</a>; +<a name="l00148"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o12">00148</a> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a>* <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o12">_LastAffectation</a>; +<a name="l00150"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o13">00150</a> CIndexStackPointer <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o13">_VarState</a>; +<a name="l00151"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o14">00151</a> CStackPointer <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o14">_Stack</a>,<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o15">_Heap</a>; +<a name="l00152"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o16">00152</a> <a class="code" href="classstd_1_1list.html">std::list<NLAISCRIPT::CStringType></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o16">_LasVarStr</a>,<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o17">_LasAffectationVarStr</a>; +<a name="l00153"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o18">00153</a> <a class="code" href="classstd_1_1list.html">std::list<IOpType *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o18">_TypeList</a>; +<a name="l00154"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o19">00154</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o19">_Error</a>; +<a name="l00155"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o20">00155</a> sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o20">_LastRegistered</a>; +<a name="l00156"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o21">00156</a> <a class="code" href="classstd_1_1list.html">std::list<pairType></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o21">_Attrib</a>; +<a name="l00157"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o22">00157</a> sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o22">_DecalageHeap</a>; +<a name="l00158"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o23">00158</a> <a class="code" href="classstd_1_1list.html">std::list<IConstraint *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o23">_MethodConstraint</a>; +<a name="l00159"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o24">00159</a> <a class="code" href="classstd_1_1list.html">std::list<IConstraint *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o24">_ConstraintType</a>; +<a name="l00160"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o25">00160</a> <a class="code" href="classstd_1_1list.html">std::list<NLAIAGENT::IBaseGroupType *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o25">_LastStringParam</a>; +<a name="l00161"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o26">00161</a> <a class="code" href="classstd_1_1list.html">std::list<CParam *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o26">_Param</a>; +<a name="l00162"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o27">00162</a> <a class="code" href="classstd_1_1list.html">std::list<NLAIAGENT::CStringVarName ></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o27">_MethodName</a>; +<a name="l00163"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o28">00163</a> IOpType *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o28">_ExpressionType</a>; +<a name="l00164"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o29">00164</a> IOpType *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o29">_FlotingExpressionType</a>; +<a name="l00165"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o30">00165</a> <a class="code" href="classstd_1_1list.html">std::list<IOpType *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o30">_ExpressionTypeTmp</a>; +<a name="l00166"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o31">00166</a> <a class="code" href="classstd_1_1list.html">std::list<IOpType *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o31">_ExpressionOp</a>; +<a name="l00167"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o32">00167</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o32">_IsFacteurIsExpression</a>; +<a name="l00168"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o33">00168</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o33">_FacteurEval</a>; +<a name="l00169"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o34">00169</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o34">_IsVoid</a>; +<a name="l00170"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o35">00170</a> sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o35">_LastPosHeap</a>; +<a name="l00171"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o36">00171</a> sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o36">_LastTypeCall</a>; +<a name="l00172"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o37">00172</a> IConstraint *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o37">_LastbaseClass</a>; +<a name="l00173"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o38">00173</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o38">_Debug</a>; +<a name="l00174"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o39">00174</a> IScriptDebugSource *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o39">_SourceFileName</a>; +<a name="l00175"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o40">00175</a> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o40">_ResultCompile</a>; +00176 +00177 <font class="comment">// Logique</font> +<a name="l00178"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o41">00178</a> <a class="code" href="classstd_1_1list.html">std::list< std::list<const NLAIAGENT::IVarName *></a> > <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o41">_LastLogicParams</a>; +<a name="l00179"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o42">00179</a> <a class="code" href="classstd_1_1list.html">std::list<const NLAIAGENT::CStringVarName *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o42">_LastBooleanConds</a>; +<a name="l00180"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o43">00180</a> <a class="code" href="classstd_1_1list.html">std::list<NLAIAGENT::CStringVarName *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o43">_LastFuzzyConds</a>; +<a name="l00181"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o44">00181</a> <a class="code" href="classstd_1_1list.html">std::list<const NLAIAGENT::CStringVarName *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o44">_LastAsserts</a>; +<a name="l00182"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o45">00182</a> <a class="code" href="classstd_1_1list.html">std::list<IOpCode *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o45">_LastCodeBranche</a>; +<a name="l00183"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o46">00183</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o46">is_cond</a>; +00184 +<a name="l00185"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o47">00185</a> <a class="code" href="classNLAILOGIC_1_1CFactBase.html">NLAILOGIC::CFactBase</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o47">_FactBase</a>; +<a name="l00186"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o48">00186</a> <a class="code" href="classNLAILOGIC_1_1CFactPattern.html">NLAILOGIC::CFactPattern</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o48">_LastFactPattern</a>; +<a name="l00187"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o49">00187</a> <a class="code" href="classNLAIAGENT_1_1IVarName.html">NLAIAGENT::IVarName</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o49">_Goal</a>; +00188 +<a name="l00189"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o50">00189</a> <a class="code" href="classstd_1_1list.html">std::list<NLAIFUZZY::CFuzzyVar *></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o50">_FuzzVars</a>; +<a name="l00190"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o51">00190</a> sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o51">_LastFVarIndex</a>; +<a name="l00191"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o52">00191</a> sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o52">_NbLogicParams</a>; +<a name="l00192"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o53">00192</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o53">_InCond</a>; +<a name="l00193"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o54">00193</a> <a class="code" href="classNLAIAGENT_1_1IMessageBase.html#s10">NLAIAGENT::IMessageBase::TPerformatif</a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o54">_LastPerf</a>; +00195 +<a name="l00196"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o55">00196</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o55">_InLineParse</a>; +<a name="l00197"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o56">00197</a> <a class="code" href="classstd_1_1list.html">std::list<bool></a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o56">_FromStack</a>; +<a name="l00198"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o57">00198</a> <a class="code" href="namespaceNLAISCRIPT.html#a17">tDicoStr</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o57">_Dictionary</a>; +<a name="l00199"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o58">00199</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o58">isRunMsg</a>; +<a name="l00200"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o59">00200</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o59">haveReturn</a>; +00201 +00202 <font class="keyword">public</font>: +00203 +<a name="l00208"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a0">00208</a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a0">CCompilateur</a>(<a class="code" href="classNLAIC_1_1IIO.html">NLAIC::IIO</a> &Iterface,<font class="keyword">const</font> <font class="keywordtype">char</font> *str, sint32 size, IScriptDebugSource* fileName): +00209 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a>(NULL), +00210 _Iterface(Iterface), +00211 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o3">_LastBloc</a>((IBlock*)NULL), +00212 _LastString("_"), +00213 _LastBaseObjectDef("_"), +00214 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o38">_Debug</a>(false), +00215 _Goal(NULL), +00216 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o53">_InCond</a>(false) +00217 { +00218 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o39">_SourceFileName</a> = fileName; +00219 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o39">_SourceFileName</a>->incRef(); +00220 <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n23">LastyyText</a>[0][0] = 0; +00221 <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n23">LastyyText</a>[1][0] = 0; +00222 <font class="comment">//_VarState = NULL;</font> +00223 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a4">InitStream</a>((<font class="keywordtype">char</font> *)str,size); +00224 <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n25">yyLine</a> = <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n26">yyColone</a> = 1; +00225 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o19">_Error</a> = <font class="keyword">false</font>; +00226 CCodeBrancheRun::InputOutput = &Iterface; +00227 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o22">_DecalageHeap</a> = 0; +00228 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o28">_ExpressionType</a> = NULL; +00229 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o29">_FlotingExpressionType</a> = NULL; +00230 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o32">_IsFacteurIsExpression</a> = <font class="keyword">false</font>; +00231 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o33">_FacteurEval</a> = <font class="keyword">false</font>; +00232 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o34">_IsVoid</a> = <font class="keyword">true</font>; +00233 _ResultCompile = NULL; +00234 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o55">_InLineParse</a> = <font class="keyword">false</font>; +00235 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o58">isRunMsg</a> = <font class="keyword">false</font>; +00236 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o59">haveReturn</a> = <font class="keyword">false</font>; +00237 _LastFactPattern = NULL; +00238 } +00239 +<a name="l00244"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a1">00244</a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a0">CCompilateur</a>(<a class="code" href="classNLAIC_1_1IIO.html">NLAIC::IIO</a> &Iterface,<font class="keyword">const</font> <font class="keywordtype">char</font> *str, IScriptDebugSource* fileName): +00245 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a>(NULL), +00246 _Iterface(Iterface), +00247 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o3">_LastBloc</a>((IBlock*)NULL), +00248 _LastString("_"), +00249 _LastBaseObjectDef("_"), +00250 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o38">_Debug</a>(false), +00251 _Goal(NULL), +00252 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o53">_InCond</a>(false) +00253 { +00254 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o39">_SourceFileName</a> = fileName; +00255 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o39">_SourceFileName</a>->incRef(); +00256 <font class="comment">//_VarState = NULL;</font> +00257 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a2">InitFromFile</a>(str); +00258 <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n25">yyLine</a> = <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n26">yyColone</a> = 1; +00259 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o19">_Error</a> = <font class="keyword">false</font>; +00260 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o22">_DecalageHeap</a> = 0; +00261 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o28">_ExpressionType</a> = NULL; +00262 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o29">_FlotingExpressionType</a> = NULL; +00263 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o32">_IsFacteurIsExpression</a> = <font class="keyword">false</font>; +00264 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o33">_FacteurEval</a> = <font class="keyword">false</font>; +00265 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o34">_IsVoid</a> = <font class="keyword">true</font>; +00266 _ResultCompile = NULL; +00267 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o55">_InLineParse</a> = <font class="keyword">false</font>; +00268 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o58">isRunMsg</a> = <font class="keyword">false</font>; +00269 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o59">haveReturn</a> = <font class="keyword">false</font>; +00270 _LastFactPattern = NULL; +00271 } +00272 +<a name="l00274"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a2">00274</a> <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a2">InitFromFile</a>(<font class="keyword">const</font> <font class="keywordtype">char</font> *FileName) +00275 { +00276 +00277 ifstream <a class="code" href="cf__lexical_8cpp.html#a95">file</a>; +00278 <a class="code" href="cf__lexical_8cpp.html#a95">file</a>.open(FileName,ios::in); +00279 sint32 Size = <a class="code" href="cf__lexical_8cpp.html#a95">file</a>.gcount(); +00280 <font class="keywordtype">char</font> *Chaine = NULL; +00281 <font class="keywordflow">if</font>(Size) +00282 { +00283 Chaine = <font class="keyword">new</font> <font class="keywordtype">char</font> [Size]; +00284 <a class="code" href="cf__lexical_8cpp.html#a95">file</a>.read(Chaine,Size); +00285 <a class="code" href="cf__lexical_8cpp.html#a95">file</a>.close(); +00286 <font class="keywordflow">if</font>(_StreamBuffer) <font class="keyword">delete</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a>; +00287 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a> = <font class="keyword">new</font> std::istrstream(Chaine,Size); +00288 } +00289 } +00290 +<a name="l00292"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a3">00292</a> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a3">getVar</a>(<font class="keyword">const</font> <font class="keywordtype">char</font> *name) +00293 { +00294 <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *var = <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o3">_LastBloc</a>->getVar(name); +00295 <font class="keywordflow">if</font>(var == NULL) +00296 { +00297 <a class="code" href="classstd_1_1list.html">std::list<IBlock *></a>::reverse_iterator i = _LastSaveBloc.rbegin(); +00298 <font class="keywordflow">while</font>(i != _LastSaveBloc.rend()) +00299 { +00300 IBlock *k = *(i); +00301 var = k->getVar(name); +00302 k = *(i); +00303 <font class="keywordflow">if</font>(var != NULL) <font class="keywordflow">break</font>; +00304 i ++; +00305 } +00306 } +00307 <font class="keywordflow">return</font> var; +00308 } +00309 +<a name="l00311"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a4">00311</a> <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a4">InitStream</a>(<font class="keywordtype">char</font> *str, sint32 size) +00312 { +00313 <font class="keywordflow">if</font>(_StreamBuffer) <font class="keyword">delete</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a>; +00314 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a> = <font class="keyword">new</font> std::istrstream(str,size); +00315 } +00316 +<a name="l00317"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a5">00317</a> <font class="keyword">virtual</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a5">~CCompilateur</a>() +00318 { +00319 +00320 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a8">clean</a>(); +00321 <font class="keywordflow">if</font>(_StreamBuffer) <font class="keyword">delete</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a>; +00322 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a9">cleanMethodConstraint</a>(); +00323 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a10">cleanTypeConstraint</a>(); +00324 <font class="comment">//_Heap -= (sint32)_Heap;</font> +00325 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o39">_SourceFileName</a>->release(); +00326 } +00327 +<a name="l00329"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a6">00329</a> <font class="keyword">virtual</font> <font class="keywordtype">int</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a6">yywrap</a>() +00330 { +00331 <font class="keywordflow">if</font>(<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a> != NULL && <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n3">yyin</a> == NULL) +00332 { +00333 <a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n3">yyin</a> = <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o0">_StreamBuffer</a>; +00334 <font class="keywordflow">return</font> 0; +00335 } +00336 <font class="keywordflow">return</font> 1; +00337 } +00338 +00340 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a7">cleanTypeList</a>(); +00342 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a8">clean</a>(); +00344 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a9">cleanMethodConstraint</a>(); +00345 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a10">cleanTypeConstraint</a>(); +00346 +00354 <font class="keyword">virtual</font> <a class="code" href="structNLAIAGENT_1_1IObjectIA_1_1CProcessResult.html">NLAIAGENT::IObjectIA::CProcessResult</a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a11">Compile</a>(); +00355 +00357 <font class="keywordtype">int</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a12">yyparse</a>(); +00358 +00360 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a13">Echo</a>(<font class="keywordtype">char</font> *Er,...); +00361 +<a name="l00363"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a14">00363</a> <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a14">yyerror</a>(<font class="keywordtype">char</font> *Er) +00364 { +00365 +00366 _Iterface.<a class="code" href="classNLAIC_1_1IIO.html#a1">Echo</a>(<font class="stringliteral">"%s at line %d et colone %d\n"</font>,Er,<a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n25">yyLine</a>,<a class="code" href="classNLAISCRIPT_1_1yyFlexLexer.html#n26">yyColone</a>); +00367 +00368 <font class="comment">//_StreamBuffer->close();</font> +00369 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o19">_Error</a> = <font class="keyword">true</font>; +00370 <font class="comment">//yyclearin;</font> +00371 } +00372 +<a name="l00374"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a15">00374</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a15">parseError</a>() +00375 { +00376 <font class="keywordflow">return</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o19">_Error</a> == <font class="keyword">true</font>; +00377 } +00378 +00379 +00385 CFunctionTag <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a16">findMethode</a>(<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *baseClass,<a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> &listName,<font class="keyword">const</font> CParam &<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>); +00391 CFunctionTag <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a16">findMethode</a>(<a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> &listName,<font class="keyword">const</font> CParam &<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>); +00392 +00398 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a18">isValidateVarName</a>(<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *baseClass,<a class="code" href="classstd_1_1list.html">std::list<sint32></a> &ref,<a class="code" href="classstd_1_1list.html">std::list<NLAISCRIPT::CStringType></a> &nameHierarchy,IOpType *&<a class="code" href="driver__opengl__extension__def_8h.html#a373">type</a>); +00404 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a18">isValidateVarName</a>(<a class="code" href="classstd_1_1list.html">std::list<sint32></a> &ref,<a class="code" href="classstd_1_1list.html">std::list<NLAISCRIPT::CStringType></a> &nameHierarchy,IOpType *&<a class="code" href="driver__opengl__extension__def_8h.html#a373">type</a>); +00405 +<a name="l00407"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a20">00407</a> <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a20">setDebugMode</a>(<font class="keywordtype">bool</font> bmode){ <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o38">_Debug</a> = bmode;} +<a name="l00409"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a21">00409</a> <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a21">getDebugMode</a>()<font class="keyword"> const </font>{<font class="keywordflow">return</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#o38">_Debug</a>;} +00410 +00411 +00412 <font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a22">validateHierarchyMethode</a>(<a class="code" href="classstd_1_1list.html">std::list<sint32></a> &,sint32 &,<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *,<a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> &listName); +00413 +00414 <font class="keyword">protected</font>: +00415 <a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b0">getTypeOfClass</a>(<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IVarName.html">NLAIAGENT::IVarName</a> &className); +00416 +00417 CCodeBrancheRun *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b1">getCode</a>(<font class="keywordtype">bool</font> isMain = <font class="keyword">false</font>); +00418 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b2">runTypeConstraint</a>(); +00419 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b3">runMethodConstraint</a>(); +00420 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b4">errorMethodConstraint</a>(); +00421 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b5">errorTypeConstraint</a>(); +00422 +<a name="l00423"></a><a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b6">00423</a> sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b6">getNMethodConstraint</a>() +00424 { +00425 <font class="keywordflow">return</font> _MethodConstraint.size(); +00426 } +00427 +00428 <a class="code" href="structNLAIAGENT_1_1CIdMethod.html">NLAIAGENT::CIdMethod</a> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#a16">findMethode</a>(sint32 inheritance,<a class="code" href="classNLAIAGENT_1_1CStringType.html">NLAIAGENT::CStringType</a> *baseName,<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *className,<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IVarName.html">NLAIAGENT::IVarName</a> &methodeName,<font class="keyword">const</font> CParam &<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>); +00429 <font class="comment">//sint32 getInheritanceRange(const IClassInterpret *,NLAIAGENT::IBaseGroupType &) const;</font> +00430 <font class="keyword">const</font> IClassInterpret *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b8">getInheritanceRange</a>(sint32 &,<font class="keyword">const</font> IClassInterpret *,<a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> &) <font class="keyword">const</font>; +00431 <font class="keyword">const</font> IClassInterpret *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b8">getInheritanceRange</a>(sint32 &,<font class="keyword">const</font> IClassInterpret *,<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IVarName.html">NLAIAGENT::IVarName</a> &) <font class="keyword">const</font>; +00432 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b10">findMethodei</a>(<a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> &listName,<font class="keyword">const</font> CParam &<a class="code" href="driver__opengl__extension__def_8h.html#a382">param</a>); +00433 +00435 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b11">setNewLine</a>(); +00436 +00437 +00438 <font class="comment">//sint32 getCompementShift(IClassInterpret *classType);</font> +00439 +00440 <font class="comment">//Function for the yacc interpreter. </font> +00441 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b12">castVariable</a>(<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1CStringVarName.html">NLAIAGENT::CStringVarName</a>&,<a class="code" href="classNLAIAGENT_1_1CStringVarName.html">NLAIAGENT::CStringVarName</a>&); +00442 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b13">ifInterrogation</a>(); +00443 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b14">ifInterrogationPoint</a>(); +00444 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b15">ifInterrogationEnd</a>(); +00445 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b16">interrogationEnd</a>(); +00446 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b17">affectation</a>(); +00447 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b18">processingVar</a>(); +00448 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b19">allocExpression</a>(IOpCode *op,<font class="keywordtype">bool</font> gd = <font class="keyword">false</font>); +00449 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b20">computContraint</a>(); +00450 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b21">RegisterClass</a>(); +00451 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b22">onEndClass</a>(); +00452 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b23">affectationMember</a>(sint32 member); +00453 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b23">affectationMember</a>(IClassInterpret *,sint32 member); +00454 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b25">affectationiMember</a>(<font class="keyword">const</font> IClassInterpret *baseClass,<a class="code" href="classstd_1_1list.html">std::list<NLAISCRIPT::CStringType></a> &varHName); +00455 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b26">PrivateError</a>(); +00456 <font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b27">getValidateHierarchyBase</a>(<a class="code" href="classstd_1_1list.html">std::list<sint32></a> &ref,sint32 &h,<a class="code" href="classstd_1_1list.html">std::list<NLAISCRIPT::CStringType></a> &listName); +00457 <font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b27">getValidateHierarchyBase</a>(<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IObjectIA.html">NLAIAGENT::IObjectIA</a> *base,<a class="code" href="classstd_1_1list.html">std::list<sint32></a> &ref,sint32 &h,<a class="code" href="classstd_1_1list.html">std::list<NLAISCRIPT::CStringType></a> &listName); +00458 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b29">nameMethodeProcessing</a>(); +00459 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b30">initParam</a>(); +00460 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b31">registerMethod</a>(); +00461 +00462 IConstraint *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b32">getMethodConstraint</a>(<font class="keyword">const</font> <a class="code" href="classNLAIAGENT_1_1IBaseGroupType.html">NLAIAGENT::IBaseGroupType</a> &g,<font class="keyword">const</font> CParam &p) <font class="keyword">const</font>; +00463 IConstraint *<a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b32">getMethodConstraint</a>(<font class="keyword">const</font> IConstraint &c) <font class="keyword">const</font>; +00464 sint32 <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b34">typeOfMethod</a>(); +00465 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b35">setParamVarName</a>(); +00466 <font class="comment">//void setParamVarName(NLAIC::CIdentType &id);</font> +00467 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b36">pushParamExpression</a>(); +00468 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b37">addParamCont</a>(); +00469 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b38">addParamRuleCont</a>(); +00470 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b39">setImediateVar</a>(); +00471 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b40">setImediateVarNill</a>(); +00472 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b41">setPerformative</a>(<a class="code" href="classNLAIAGENT_1_1IMessageBase.html#s10">NLAIAGENT::IMessageBase::TPerformatif</a> p); +00473 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b42">setListVar</a>(); +00474 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b43">setChaineVar</a>(); +00475 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b44">setStackVar</a>(<font class="keyword">const</font> <a class="code" href="classNLAIC_1_1CIdentType.html">NLAIC::CIdentType</a> &); +00476 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b45">setMethodVar</a>(); +00477 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b46">buildObject</a>(); +00478 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b47">setTypeExpression</a>(); +00479 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b47">setTypeExpression</a>(<a class="code" href="classNLAIC_1_1CTypeOfOperator.html#s15">NLAIC::CTypeOfOperator::TTypeOp</a> op,<font class="keyword">const</font> <font class="keywordtype">char</font> *txtOp); +00480 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b49">setTypeExpressionG</a>(); +00481 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b50">setTypeExpressionD</a>(<a class="code" href="classNLAIC_1_1CTypeOfOperator.html#s15">NLAIC::CTypeOfOperator::TTypeOp</a> op,<font class="keyword">const</font> <font class="keywordtype">char</font> *txtOp); +00482 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b51">callFunction</a>(); +00483 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b52">checkReturnMethod</a>(); +00484 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b53">callSend</a>(); +00485 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b54">initMessageManager</a>(); +00486 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b55">endMessageManager</a>(); +00487 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b56">caseRunMsg</a>(); +00488 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b57">definClass</a>(<font class="keyword">const</font> <font class="keywordtype">char</font> *className); +00489 +00490 +00492 <font class="keywordtype">bool</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b58">classIsAnOperator</a>(); +00493 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b59">CompileFactPattern</a>(); +00494 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b60">CompileOperator</a>(); +00495 +00496 <font class="keywordtype">void</font> <a class="code" href="classNLAISCRIPT_1_1CCompilateur.html#b61">addOpCode</a>(IOpCode *<a class="code" href="driver__opengl__extension__def_8h.html#a364">x</a>); +00497 }; +00498 } +00499 <font class="preprocessor">#endif</font> +</pre></div> + +<!-- footer --> +<BR><FONT Size=+5> </FONT> +</TD> +<TD WIDTH=15><IMG SRC=http://www.nevrax.org/inc/img/pixel.gif WIDTH=15 HEIGHT=15 BORDER=0 ALT=""></TD> +</TR> +</TABLE> +</BODY> +</HTML> |