From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- .../nel/class_NLAISCRIPT__CCompilateur.html | 4678 ++++++++++++++++++++ 1 file changed, 4678 insertions(+) create mode 100644 docs/doxygen/nel/class_NLAISCRIPT__CCompilateur.html (limited to 'docs/doxygen/nel/class_NLAISCRIPT__CCompilateur.html') diff --git a/docs/doxygen/nel/class_NLAISCRIPT__CCompilateur.html b/docs/doxygen/nel/class_NLAISCRIPT__CCompilateur.html new file mode 100644 index 00000000..3a526792 --- /dev/null +++ b/docs/doxygen/nel/class_NLAISCRIPT__CCompilateur.html @@ -0,0 +1,4678 @@ + + + + nevrax.org : docs + + + + + + + + + + + + + + +
# Home   # nevrax.com   
+ + + + +
Nevrax
+ + + + + + + + + + +
+ + +
+ Nevrax.org
+ + + + + + + +
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
+
+ + +
+ + +
+Docs + +
+  + + + + + +
Documentation 
+ +
+Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  
+

NLAISCRIPT::CCompilateur Class Reference

This class define compilation of a source code. +More... +

+#include <compilateur.h> +

+Inheritance diagram for NLAISCRIPT::CCompilateur

Inheritance graph
+ + + + +
[legend]
Collaboration diagram for NLAISCRIPT::CCompilateur:

Collaboration graph
+ + + + + + + + + + + + + + + + + + + + + + +
[legend]
List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Methods

 CCompilateur (NLAIC::IIO &Iterface,const char *str, sint32 size, IScriptDebugSource* fileName)
 The perser need an IO interface, an source code here defined by const char *str and sint32 size. More...

 CCompilateur (NLAIC::IIO &Iterface,const char *str, IScriptDebugSource* fileName)
 The perser need an IO interface, an source code here defined by const char *str which it define a file name. More...

void InitFromFile (const char *FileName)
 Initialize source code from file. More...

NLAIAGENT::IObjectIAgetVar (const char *name)
 get the locale variable define by name. More...

void InitStream (char *str, sint32 size)
 Initialize the std::stream. More...

virtual ~CCompilateur ()
virtual int yywrap ()
 This function is needed by the lex parser for initializ the read stream (see lex documment). More...

void cleanTypeList ()
 Clean internal list. More...

void clean ()
 Initialize variable befor parsing. More...

void cleanMethodConstraint ()
 Initialisze the constraint. More...

void cleanTypeConstraint ()
virtual NLAIAGENT::IObjectIA::CProcessResult Compile ()
 This method generate compiled code. More...

int yyparse ()
 Yacc parser.

void Echo (char *Er,...)
 Same as printf but out put is made to the IO interface. More...

void yyerror (char *Er)
 Occur when there are a parse error. More...

bool parseError ()
 You can use this to consult the state of the parser. More...

CFunctionTag findMethode (const NLAIAGENT::IObjectIA *baseClass,NLAIAGENT::IBaseGroupType &listName,const CParam &param)
 Find a method in a class define by the baseClass pointer. More...

CFunctionTag findMethode (NLAIAGENT::IBaseGroupType &listName,const CParam &param)
 Find a method the last class mounted by the parser. More...

sint32 isValidateVarName (const NLAIAGENT::IObjectIA *baseClass,std::list<sint32> &ref,std::list<NLAISCRIPT::CStringType> &nameHierarchy,IOpType *&type)
 Search if a member variable is validete for a class defined by baseClass. More...

sint32 isValidateVarName (std::list<sint32> &ref,std::list<NLAISCRIPT::CStringType> &nameHierarchy,IOpType *&type)
 Search if a member variable is validete in the lase class parsed. More...

void setDebugMode (bool bmode)
 Set the Debug Mode. More...

bool getDebugMode () const
 Get the debug state. More...

const NLAIAGENT::IObjectIAvalidateHierarchyMethode (std::list<sint32> &,sint32 &,const NLAIAGENT::IObjectIA *,NLAIAGENT::IBaseGroupType &listName)

Protected Methods

NLAIC::CIdentType getTypeOfClass (const NLAIAGENT::IVarName &className)
 throw (NLAIE::IException). More...

CCodeBrancheRungetCode (bool isMain = false)
 throw (NLAIE::IException). More...

sint32 runTypeConstraint ()
sint32 runMethodConstraint ()
void errorMethodConstraint ()
void errorTypeConstraint ()
sint32 getNMethodConstraint ()
NLAIAGENT::CIdMethod findMethode (sint32 inheritance,NLAIAGENT::CStringType *baseName,const NLAIAGENT::IObjectIA *className,const NLAIAGENT::IVarName &methodeName,const CParam &param)
const IClassInterpretgetInheritanceRange (sint32 &,const IClassInterpret *,NLAIAGENT::IBaseGroupType &) const
const IClassInterpretgetInheritanceRange (sint32 &,const IClassInterpret *,const NLAIAGENT::IVarName &) const
sint32 findMethodei (NLAIAGENT::IBaseGroupType &listName,const CParam &param)
virtual void setNewLine ()
 Tell the _lastBlock about a newLine (for Debug). More...

sint32 castVariable (const NLAIAGENT::CStringVarName&,NLAIAGENT::CStringVarName&)
void ifInterrogation ()
void ifInterrogationPoint ()
void ifInterrogationEnd ()
void interrogationEnd ()
sint32 affectation ()
sint32 processingVar ()
void allocExpression (IOpCode *op,bool gd = false)
bool computContraint ()
void RegisterClass ()
sint32 affectationMember (sint32 member)
sint32 affectationMember (IClassInterpret *,sint32 member)
sint32 affectationiMember (const IClassInterpret *baseClass,std::list<NLAISCRIPT::CStringType> &varHName)
sint32 PrivateError ()
const NLAIAGENT::IObjectIAgetValidateHierarchyBase (std::list<sint32> &ref,sint32 &h,std::list<NLAISCRIPT::CStringType> &listName)
const NLAIAGENT::IObjectIAgetValidateHierarchyBase (const NLAIAGENT::IObjectIA *base,std::list<sint32> &ref,sint32 &h,std::list<NLAISCRIPT::CStringType> &listName)
void nameMethodeProcessing ()
void initParam ()
bool registerMethod ()
IConstraintgetMethodConstraint (const NLAIAGENT::IBaseGroupType &g,const CParam &p) const
IConstraintgetMethodConstraint (const IConstraint &c) const
sint32 typeOfMethod ()
bool setParamVarName ()
void pushParamExpression ()
void setImediateVar ()
void setImediateVarNill ()
void setPerformative (NLAIAGENT::IMessageBase::TPerformatif p)
void setListVar ()
void setChaineVar ()
void setStackVar (const NLAIC::CIdentType &)
void setMethodVar ()
bool buildObject ()
void setTypeExpression ()
void setTypeExpression (NLAIC::CTypeOfOperator::TTypeOp op,const char *txtOp)
void setTypeExpressionG ()
void setTypeExpressionD (NLAIC::CTypeOfOperator::TTypeOp op,const char *txtOp)
bool callFunction ()
void callSend ()
void initMessageManager ()
bool endMessageManager ()
bool caseRunMsg ()
bool classIsAnOperator ()
 Logic compilation. More...

void CompileFactPattern ()
void CompileOperator ()

Private Types

typedef std::pair<NLAIAGENT::IVarName *,
+NLAIAGENT::IObjectIA *> 
pairType
 This define is use for define an argument of a method in the language. More...


Private Attributes

std::istrstream* _StreamBuffer
 Stream that contain source code. More...

NLAIC::IIO_Iterface
 IO for set out text or for get an input. More...

CFactorType _LastFact
 Type of last statement. More...

IBlock_LastBloc
 Laste code parsed. More...

NLAIAGENT::CStringVarName _LastString
 Last string. More...

NLAIAGENT::CStringVarName _LastBaseObjectDef
bool _BaseObjectDef
CListClass _SelfClass
 List of class define in the souce code. More...

std::list<IBlock*> _LastSaveBloc
 temporary code parsed for code manager. More...

std::list<IBlock*> _LastBloc1
std::list<IBlock*> _LastBloc2
std::list<IBlock*> _LastBloc3
NLAIAGENT::IObjectIA_LastAffectation
 Last affected variable. More...

CIndexStackPointer _VarState
 This variable allow to simulate the heap allocation. More...

CStackPointer _Stack
CStackPointer _Heap
std::list<NLAISCRIPT::CStringType_LasVarStr
std::list<NLAISCRIPT::CStringType_LasAffectationVarStr
std::list<IOpType *> _TypeList
bool _Error
sint32 _LastRegistered
std::list<pairType_Attrib
sint32 _DecalageHeap
std::list<IConstraint *> _MethodConstraint
std::list<IConstraint *> _ConstraintType
std::list<NLAIAGENT::IBaseGroupType *> _LastStringParam
std::list<CParam *> _Param
std::list<NLAIAGENT::CStringVarName_MethodName
IOpType_ExpressionType
IOpType_FlotingExpressionType
std::list<IOpType *> _ExpressionTypeTmp
std::list<IOpType *> _ExpressionOp
bool _IsFacteurIsExpression
bool _FacteurEval
bool _IsVoid
sint32 _LastPosHeap
sint32 _LastTypeCall
IConstraint_LastbaseClass
bool _Debug
IScriptDebugSource_SourceFileName
NLAIAGENT::IObjectIA_ResultCompile
std::list< std::list<const
+NLAIAGENT::IVarName *> > 
_LastLogicParams
std::list<const NLAIAGENT::CStringVarName *> _LastBooleanConds
std::list<NLAIAGENT::CStringVarName *> _LastFuzzyConds
std::list<const NLAIAGENT::CStringVarName *> _LastAsserts
std::list<IOpCode *> _LastCodeBranche
NLAILOGIC::CFactBase_FactBase
NLAILOGIC::CFactPattern_LastFactPattern
NLAIAGENT::IVarName_Goal
std::list<NLAIFUZZY::CFuzzyVar *> _FuzzVars
sint32 _LastFVarIndex
sint32 _NbLogicParams
bool _InLineParse
std::list<bool> _FromStack
tDicoStr_Dictionary
bool isRunMsg
bool haveReturn
+

Detailed Description

+This class define compilation of a source code. +

+He is heritage come from the lex parser.

+Author(s):
+ Chafik sameh , Robert Gabriel , Nevrax France
+Date:
+ 2000
+

+ +

+Definition at line 125 of file compilateur.h.


Member Typedef Documentation

+

+ + + + +
+ + + + + +
+typedef std::pair<NLAIAGENT::IVarName *,NLAIAGENT::IObjectIA *> NLAISCRIPT::CCompilateur::pairType [private] +
+
+ + + + + +
+   + + +

+This define is use for define an argument of a method in the language. +

+ +

+Definition at line 129 of file compilateur.h.

+


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + + + + + + + + + + +
+NLAISCRIPT::CCompilateur::CCompilateur ( + +NLAIC::IIO & Iterface, +
+const char * str, +
+sint32 size, +
+IScriptDebugSource * fileName ) [inline] +
+
+ + + + + +
+   + + +

+The perser need an IO interface, an source code here defined by const char *str and sint32 size. +

+Remark that the const char* fileName variable is necessary for the debug code version. +

+Definition at line 205 of file compilateur.h.

+

+ + + + +
+ + + + + + + + + + + + + + +
+NLAISCRIPT::CCompilateur::CCompilateur ( + +NLAIC::IIO & Iterface, +
+const char * str, +
+IScriptDebugSource * fileName ) [inline] +
+
+ + + + + +
+   + + +

+The perser need an IO interface, an source code here defined by const char *str which it define a file name. +

+Remark that the const char* fileName variable is necessary for the debug code version. +

+Definition at line 240 of file compilateur.h.

+

+ + + + +
+ + + + + + +
+NLAISCRIPT::CCompilateur::~CCompilateur ( + +) [inline, virtual] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 312 of file compilateur.h.

+


Member Function Documentation

+

+ + + + +
+ + + + + + +
+NLAIAGENT::IObjectIA::CProcessResult NLAISCRIPT::CCompilateur::Compile ( + +) [virtual] +
+
+ + + + + +
+   + + +

+This method generate compiled code. +

+Return is a NLAIAGENT::IObjectIA::CProcessResult where: +

+ResultState cintaine a processIdle if the code is generate or ProcessError if there are a prsing error. If there are no problem Result contain the code to execut. +

+Definition at line 84 of file compilateur.cpp. +

+Referenced by NLAILINK::buildScript().

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::CompileFactPattern ( + +) [protected] +
+
+ + + + + +
+   + + +

+

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::CompileOperator ( + +) [protected] +
+
+ + + + + +
+   + + +

+

+

+ + + + +
+ + + + + + + + + + +
+void NLAISCRIPT::CCompilateur::Echo ( + +char * Er, +
+... ) +
+
+ + + + + +
+   + + +

+Same as printf but out put is made to the IO interface. +

+ +

+Definition at line 73 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::InitFromFile ( + +const char * FileName ) [inline] +
+
+ + + + + +
+   + + +

+Initialize source code from file. +

+ +

+Definition at line 269 of file compilateur.h.

+

+ + + + +
+ + + + + + + + + + +
+void NLAISCRIPT::CCompilateur::InitStream ( + +char * str, +
+sint32 size ) [inline] +
+
+ + + + + +
+   + + +

+Initialize the std::stream. +

+ +

+Definition at line 306 of file compilateur.h.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::PrivateError ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 357 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::RegisterClass ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 536 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::affectation ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 139 of file yacc.cpp.

+

+ + + + +
+ + + + + + + + + + +
+sint32 NLAISCRIPT::CCompilateur::affectationMember ( + +IClassInterpret * base, +
+sint32 member ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 326 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::affectationMember ( + +sint32 member ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 321 of file yacc.cpp.

+

+ + + + +
+ + + + + + + + + + +
+sint32 NLAISCRIPT::CCompilateur::affectationiMember ( + +const IClassInterpret * baseClass, +
+std::list< NLAISCRIPT::CStringType >& varHName ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 418 of file yacc.cpp.

+

+ + + + +
+ + + + + + + + + + +
+void NLAISCRIPT::CCompilateur::allocExpression ( + +IOpCode * op, +
+bool gd = false ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 424 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::buildObject ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 527 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::callFunction ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 803 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::callSend ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 797 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::caseRunMsg ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 33 of file var_control.cpp.

+

+ + + + +
+ + + + + + + + + + +
+sint32 NLAISCRIPT::CCompilateur::castVariable ( + +const NLAIAGENT::CStringVarName & v, +
+NLAIAGENT::CStringVarName & t ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 53 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::classIsAnOperator ( + +) [protected] +
+
+ + + + + +
+   + + +

+Logic compilation. +

+ +

+Definition at line 48 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::clean ( + +) +
+
+ + + + + +
+   + + +

+Initialize variable befor parsing. +

+ +

+Definition at line 341 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::cleanMethodConstraint ( + +) +
+
+ + + + + +
+   + + +

+Initialisze the constraint. +

+ +

+Definition at line 408 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::cleanTypeConstraint ( + +) +
+
+ + + + + +
+   + + +

+ +

+Definition at line 416 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::cleanTypeList ( + +) +
+
+ + + + + +
+   + + +

+Clean internal list. +

+ +

+Definition at line 333 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::computContraint ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 551 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::endMessageManager ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 1000 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::errorMethodConstraint ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 315 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::errorTypeConstraint ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 300 of file compilateur.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + +
+NLAIAGENT::CIdMethod NLAISCRIPT::CCompilateur::findMethode ( + +sint32 inheritance, +
+NLAIAGENT::CStringType * baseName, +
+const NLAIAGENT::IObjectIA * classType, +
+const NLAIAGENT::IVarName & methodeName, +
+const CParam & param ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 106 of file compilateur.cpp.

+

+ + + + +
+ + + + + + + + + + +
+CFunctionTag NLAISCRIPT::CCompilateur::findMethode ( + +NLAIAGENT::IBaseGroupType & listName, +
+const CParam & param ) +
+
+ + + + + +
+   + + +

+Find a method the last class mounted by the parser. +

+Method is define by a name or hiarchie name (a hiarchie name is a list same as [myBaseClass myClass myMethod] here it define the string myBaseClass.myClass.myMethod()). param is a CParam object where it define the argument type of the method. +

+Definition at line 129 of file compilateur.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + +
+CFunctionTag NLAISCRIPT::CCompilateur::findMethode ( + +const NLAIAGENT::IObjectIA * classType, +
+NLAIAGENT::IBaseGroupType & listName, +
+const CParam & param ) +
+
+ + + + + +
+   + + +

+Find a method in a class define by the baseClass pointer. +

+Method is define by a name or hiarchie name (a hiarchie name is a list same as [myBaseClass myClass myMethod] here it define the string myBaseClass.myClass.myMethod()). param is a CParam object where it define the argument type of the method. +

+Definition at line 134 of file compilateur.cpp.

+

+ + + + +
+ + + + + + + + + + +
+sint32 NLAISCRIPT::CCompilateur::findMethodei ( + +NLAIAGENT::IBaseGroupType & listName, +
+const CParam & param ) [protected] +
+
+ + + + + +
+   + + +

+

+

+ + + + +
+ + + + + + +
+CCodeBrancheRun * NLAISCRIPT::CCompilateur::getCode ( + +bool isMain = false ) [protected] +
+
+ + + + + +
+   + + +

+throw (NLAIE::IException). +

+ +

+Definition at line 941 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::getDebugMode ( + +) const [inline] +
+
+ + + + + +
+   + + +

+Get the debug state. +

+ +

+Definition at line 404 of file compilateur.h.

+

+ + + + +
+ + + + + + + + + + + + + + +
+const IClassInterpret * NLAISCRIPT::CCompilateur::getInheritanceRange ( + +sint32 & h, +
+const IClassInterpret * classType, +
+const NLAIAGENT::IVarName & className ) const [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 61 of file hierarchy.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + +
+const IClassInterpret * NLAISCRIPT::CCompilateur::getInheritanceRange ( + +sint32 & h, +
+const IClassInterpret * classType, +
+NLAIAGENT::IBaseGroupType & listName ) const [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 29 of file hierarchy.cpp.

+

+ + + + +
+ + + + + + +
+IConstraint * NLAISCRIPT::CCompilateur::getMethodConstraint ( + +const IConstraint & c ) const [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 440 of file compilateur.cpp.

+

+ + + + +
+ + + + + + + + + + +
+IConstraint * NLAISCRIPT::CCompilateur::getMethodConstraint ( + +const NLAIAGENT::IBaseGroupType & g, +
+const CParam & p ) const [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 425 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::getNMethodConstraint ( + +) [inline, protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 418 of file compilateur.h.

+

+ + + + +
+ + + + + + +
+NLAIC::CIdentType NLAISCRIPT::CCompilateur::getTypeOfClass ( + +const NLAIAGENT::IVarName & className ) [protected] +
+
+ + + + + +
+   + + +

+throw (NLAIE::IException). +

+ +

+Definition at line 52 of file compilateur.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + +
+const NLAIAGENT::IObjectIA * NLAISCRIPT::CCompilateur::getValidateHierarchyBase ( + +const NLAIAGENT::IObjectIA * base, +
+std::list< sint32 >& ref, +
+sint32 & h, +
+std::list< NLAISCRIPT::CStringType >& listName ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 104 of file hierarchy.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + +
+const NLAIAGENT::IObjectIA * NLAISCRIPT::CCompilateur::getValidateHierarchyBase ( + +std::list< sint32 >& ref, +
+sint32 & h, +
+std::list< NLAISCRIPT::CStringType >& listName ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 99 of file hierarchy.cpp.

+

+ + + + +
+ + + + + + +
+NLAIAGENT::IObjectIA * NLAISCRIPT::CCompilateur::getVar ( + +const char * name ) [inline] +
+
+ + + + + +
+   + + +

+get the locale variable define by name. +

+ +

+Definition at line 287 of file compilateur.h.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::ifInterrogation ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 64 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::ifInterrogationEnd ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 98 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::ifInterrogationPoint ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 80 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::initMessageManager ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 987 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::initParam ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 589 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::interrogationEnd ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 36 of file yacc.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + +
+sint32 NLAISCRIPT::CCompilateur::isValidateVarName ( + +std::list< sint32 >& ref, +
+std::list< NLAISCRIPT::CStringType >& listName, +
+IOpType *& type ) +
+
+ + + + + +
+   + + +

+Search if a member variable is validete in the lase class parsed. +

+The variable is define by a CStringType hiarchie name in the nameHierarchy argument (a hiarchie name is a list same as [myBaseClass myClass myVariable] where it define the string myBaseClass.myClass.myVariable = 5). If the var name is validate then ref contain how to make reference and type containe the type of the attribut. +

+Definition at line 379 of file yacc.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + +
+sint32 NLAISCRIPT::CCompilateur::isValidateVarName ( + +const NLAIAGENT::IObjectIA * base, +
+std::list< sint32 >& ref, +
+std::list< NLAISCRIPT::CStringType >& listName, +
+IOpType *& type ) +
+
+ + + + + +
+   + + +

+Search if a member variable is validete for a class defined by baseClass. +

+The variable is define by a CStringType hiarchie name in the nameHierarchy argument (a hiarchie name is a list same as [myBaseClass myClass myVariable] where it define the string myBaseClass.myClass.myVariable = 5). If the var name is validate then ref contain how to make reference and type containe the type of the attribut. +

+Definition at line 384 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::nameMethodeProcessing ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 523 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::parseError ( + +) [inline] +
+
+ + + + + +
+   + + +

+You can use this to consult the state of the parser. +

+ +

+Definition at line 369 of file compilateur.h.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::processingVar ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 81 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::pushParamExpression ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 378 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::registerMethod ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 601 of file yacc.cpp.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::runMethodConstraint ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 260 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::runTypeConstraint ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 234 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setChaineVar ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 459 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setDebugMode ( + +bool bmode ) [inline] +
+
+ + + + + +
+   + + +

+Set the Debug Mode. +

+ +

+Definition at line 402 of file compilateur.h.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setImediateVar ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 440 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setImediateVarNill ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 427 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setListVar ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 451 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setMethodVar ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 480 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setNewLine ( + +) [protected, virtual] +
+
+ + + + + +
+   + + +

+Tell the _lastBlock about a newLine (for Debug). +

+ +

+Reimplemented from NLAISCRIPT::yyFlexLexer. +

+Definition at line 452 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+bool NLAISCRIPT::CCompilateur::setParamVarName ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 337 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setPerformative ( + +NLAIAGENT::IMessageBase::TPerformatif p ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 390 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setStackVar ( + +const NLAIC::CIdentType & type ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 470 of file var_control.cpp.

+

+ + + + +
+ + + + + + + + + + +
+void NLAISCRIPT::CCompilateur::setTypeExpression ( + +NLAIC::CTypeOfOperator::TTypeOp op, +
+const char * txtOp ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 595 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setTypeExpression ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 581 of file var_control.cpp.

+

+ + + + +
+ + + + + + + + + + +
+void NLAISCRIPT::CCompilateur::setTypeExpressionD ( + +NLAIC::CTypeOfOperator::TTypeOp op, +
+const char * txtOp ) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 631 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::setTypeExpressionG ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 613 of file var_control.cpp.

+

+ + + + +
+ + + + + + +
+sint32 NLAISCRIPT::CCompilateur::typeOfMethod ( + +) [protected] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 757 of file yacc.cpp.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + +
+const NLAIAGENT::IObjectIA * NLAISCRIPT::CCompilateur::validateHierarchyMethode ( + +std::list< sint32 >& listH, +
+sint32 & h, +
+const NLAIAGENT::IObjectIA * classType, +
+NLAIAGENT::IBaseGroupType & listName ) +
+
+ + + + + +
+   + + +

+ +

+Definition at line 219 of file compilateur.cpp.

+

+ + + + +
+ + + + + + +
+void NLAISCRIPT::CCompilateur::yyerror ( + +char * Er ) [inline] +
+
+ + + + + +
+   + + +

+Occur when there are a parse error. +

+ +

+Definition at line 358 of file compilateur.h.

+

+ + + + +
+ + + + + + +
+int NLAISCRIPT::CCompilateur::yyparse ( + +) +
+
+ + + + + +
+   + + +

+Yacc parser. +

+

+

+ + + + +
+ + + + + + +
+int NLAISCRIPT::CCompilateur::yywrap ( + +) [inline, virtual] +
+
+ + + + + +
+   + + +

+This function is needed by the lex parser for initializ the read stream (see lex documment). +

+ +

+Reimplemented from NLAISCRIPT::yyFlexLexer. +

+Definition at line 324 of file compilateur.h.

+


Member Data Documentation

+

+ + + + +
+ + + + + +
+std::list< pairType > NLAISCRIPT::CCompilateur::_Attrib [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 156 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::_BaseObjectDef [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 142 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IConstraint *> NLAISCRIPT::CCompilateur::_ConstraintType [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 159 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::_Debug [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 173 of file compilateur.h.

+

+ + + + +
+ + + + + +
+sint32 NLAISCRIPT::CCompilateur::_DecalageHeap [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 157 of file compilateur.h.

+

+ + + + +
+ + + + + +
+tDicoStr * NLAISCRIPT::CCompilateur::_Dictionary [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 195 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::_Error [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 154 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IOpType *> NLAISCRIPT::CCompilateur::_ExpressionOp [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 166 of file compilateur.h.

+

+ + + + +
+ + + + + +
+IOpType * NLAISCRIPT::CCompilateur::_ExpressionType [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 163 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IOpType *> NLAISCRIPT::CCompilateur::_ExpressionTypeTmp [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 165 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAILOGIC::CFactBase * NLAISCRIPT::CCompilateur::_FactBase [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 184 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::_FacteurEval [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 168 of file compilateur.h.

+

+ + + + +
+ + + + + +
+IOpType * NLAISCRIPT::CCompilateur::_FlotingExpressionType [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 164 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< bool > NLAISCRIPT::CCompilateur::_FromStack [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 194 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< NLAIFUZZY::CFuzzyVar *> NLAISCRIPT::CCompilateur::_FuzzVars [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 188 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAIAGENT::IVarName * NLAISCRIPT::CCompilateur::_Goal [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 186 of file compilateur.h.

+

+ + + + +
+ + + + + +
+CStackPointer NLAISCRIPT::CCompilateur::_Heap [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 151 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::_InLineParse [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 193 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::_IsFacteurIsExpression [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 167 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::_IsVoid [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 169 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAIC::IIO & NLAISCRIPT::CCompilateur::_Iterface [private] +
+
+ + + + + +
+   + + +

+IO for set out text or for get an input. +

+ +

+Definition at line 135 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< NLAISCRIPT::CStringType > NLAISCRIPT::CCompilateur::_LasAffectationVarStr [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 152 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< NLAISCRIPT::CStringType > NLAISCRIPT::CCompilateur::_LasVarStr [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 152 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAIAGENT::IObjectIA * NLAISCRIPT::CCompilateur::_LastAffectation [private] +
+
+ + + + + +
+   + + +

+Last affected variable. +

+ +

+Definition at line 148 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< const NLAIAGENT::CStringVarName *> NLAISCRIPT::CCompilateur::_LastAsserts [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 181 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAIAGENT::CStringVarName NLAISCRIPT::CCompilateur::_LastBaseObjectDef [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 141 of file compilateur.h.

+

+ + + + +
+ + + + + +
+IBlock * NLAISCRIPT::CCompilateur::_LastBloc [private] +
+
+ + + + + +
+   + + +

+Laste code parsed. +

+ +

+Definition at line 139 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IBlock *> NLAISCRIPT::CCompilateur::_LastBloc1 [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 146 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IBlock *> NLAISCRIPT::CCompilateur::_LastBloc2 [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 146 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IBlock *> NLAISCRIPT::CCompilateur::_LastBloc3 [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 146 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< const NLAIAGENT::CStringVarName *> NLAISCRIPT::CCompilateur::_LastBooleanConds [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 179 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IOpCode *> NLAISCRIPT::CCompilateur::_LastCodeBranche [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 182 of file compilateur.h.

+

+ + + + +
+ + + + + +
+sint32 NLAISCRIPT::CCompilateur::_LastFVarIndex [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 189 of file compilateur.h.

+

+ + + + +
+ + + + + +
+CFactorType NLAISCRIPT::CCompilateur::_LastFact [private] +
+
+ + + + + +
+   + + +

+Type of last statement. +

+ +

+Definition at line 137 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAILOGIC::CFactPattern * NLAISCRIPT::CCompilateur::_LastFactPattern [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 185 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< NLAIAGENT::CStringVarName *> NLAISCRIPT::CCompilateur::_LastFuzzyConds [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 180 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< std::list< const NLAIAGENT::IVarName *> > NLAISCRIPT::CCompilateur::_LastLogicParams [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 178 of file compilateur.h.

+

+ + + + +
+ + + + + +
+sint32 NLAISCRIPT::CCompilateur::_LastPosHeap [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 170 of file compilateur.h.

+

+ + + + +
+ + + + + +
+sint32 NLAISCRIPT::CCompilateur::_LastRegistered [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 155 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IBlock *> NLAISCRIPT::CCompilateur::_LastSaveBloc [private] +
+
+ + + + + +
+   + + +

+temporary code parsed for code manager. +

+ +

+Definition at line 146 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAIAGENT::CStringVarName NLAISCRIPT::CCompilateur::_LastString [private] +
+
+ + + + + +
+   + + +

+Last string. +

+ +

+Definition at line 141 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< NLAIAGENT::IBaseGroupType *> NLAISCRIPT::CCompilateur::_LastStringParam [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 160 of file compilateur.h.

+

+ + + + +
+ + + + + +
+sint32 NLAISCRIPT::CCompilateur::_LastTypeCall [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 171 of file compilateur.h.

+

+ + + + +
+ + + + + +
+IConstraint * NLAISCRIPT::CCompilateur::_LastbaseClass [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 172 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IConstraint *> NLAISCRIPT::CCompilateur::_MethodConstraint [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 158 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< NLAIAGENT::CStringVarName > NLAISCRIPT::CCompilateur::_MethodName [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 162 of file compilateur.h.

+

+ + + + +
+ + + + + +
+sint32 NLAISCRIPT::CCompilateur::_NbLogicParams [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 190 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< CParam *> NLAISCRIPT::CCompilateur::_Param [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 161 of file compilateur.h.

+

+ + + + +
+ + + + + +
+NLAIAGENT::IObjectIA * NLAISCRIPT::CCompilateur::_ResultCompile [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 175 of file compilateur.h.

+

+ + + + +
+ + + + + +
+CListClass NLAISCRIPT::CCompilateur::_SelfClass [private] +
+
+ + + + + +
+   + + +

+List of class define in the souce code. +

+ +

+Definition at line 144 of file compilateur.h.

+

+ + + + +
+ + + + + +
+IScriptDebugSource * NLAISCRIPT::CCompilateur::_SourceFileName [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 174 of file compilateur.h.

+

+ + + + +
+ + + + + +
+CStackPointer NLAISCRIPT::CCompilateur::_Stack [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 151 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::istrstream * NLAISCRIPT::CCompilateur::_StreamBuffer [private] +
+
+ + + + + +
+   + + +

+Stream that contain source code. +

+ +

+Definition at line 133 of file compilateur.h.

+

+ + + + +
+ + + + + +
+std::list< IOpType *> NLAISCRIPT::CCompilateur::_TypeList [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 153 of file compilateur.h.

+

+ + + + +
+ + + + + +
+CIndexStackPointer NLAISCRIPT::CCompilateur::_VarState [private] +
+
+ + + + + +
+   + + +

+This variable allow to simulate the heap allocation. +

+ +

+Definition at line 150 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::haveReturn [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 197 of file compilateur.h.

+

+ + + + +
+ + + + + +
+bool NLAISCRIPT::CCompilateur::isRunMsg [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 196 of file compilateur.h.

+


The documentation for this class was generated from the following files: + + + +
                                                                                                                                                                    +
+ + -- cgit v1.2.1