#include <C4AulParse.h>
Public Member Functions | |
C4AulParse (class C4ScriptHost *host) | |
C4AulParse (C4AulScriptFunc *Fn, C4AulScriptContext *context, C4AulScriptEngine *Engine) | |
~C4AulParse () | |
std::unique_ptr<::aul::ast::FunctionDecl > | Parse_DirectExec (const char *code, bool whole_function) |
std::unique_ptr<::aul::ast::Script > | Parse_Script (C4ScriptHost *) |
Protected Member Functions | |
std::unique_ptr<::aul::ast::FunctionDecl > | Parse_ToplevelFunctionDecl () |
std::unique_ptr<::aul::ast::Stmt > | Parse_Statement () |
std::unique_ptr<::aul::ast::Block > | Parse_Block () |
std::unique_ptr<::aul::ast::ArrayLit > | Parse_Array () |
std::unique_ptr<::aul::ast::ProplistLit > | Parse_PropList () |
std::unique_ptr<::aul::ast::DoLoop > | Parse_DoWhile () |
std::unique_ptr<::aul::ast::WhileLoop > | Parse_While () |
std::unique_ptr<::aul::ast::If > | Parse_If () |
std::unique_ptr<::aul::ast::ForLoop > | Parse_For () |
std::unique_ptr<::aul::ast::RangeLoop > | Parse_ForEach () |
std::unique_ptr<::aul::ast::Expr > | Parse_Expression (int iParentPrio=-1) |
std::unique_ptr<::aul::ast::VarDecl > | Parse_Var () |
void | Shift () |
Friends | |
class | C4AulParseError |
Definition at line 45 of file C4AulParse.h.
C4AulParse::C4AulParse | ( | class C4ScriptHost * | host | ) |
Definition at line 105 of file C4AulParse.cpp.
C4AulParse::C4AulParse | ( | C4AulScriptFunc * | Fn, |
C4AulScriptContext * | context, | ||
C4AulScriptEngine * | Engine | ||
) |
Definition at line 112 of file C4AulParse.cpp.
C4AulParse::~C4AulParse | ( | ) |
Definition at line 119 of file C4AulParse.cpp.
|
protected |
Definition at line 1211 of file C4AulParse.cpp.
References ATT_BCLOSE2, ATT_BOPEN2, ATT_COMMA, Parse_Expression(), and Shift().
Referenced by Parse_Expression().
|
protected |
Definition at line 1050 of file C4AulParse.cpp.
References ATT_BLCLOSE, ATT_BLOPEN, Parse_Statement(), and Shift().
Referenced by Parse_Statement().
std::unique_ptr<::aul::ast::FunctionDecl > C4AulParse::Parse_DirectExec | ( | const char * | code, |
bool | whole_function | ||
) |
Definition at line 857 of file C4AulParse.cpp.
References ATT_EOF, Parse_Expression(), Parse_ToplevelFunctionDecl(), and Shift().
Referenced by C4AulScriptFunc::ParseDirectExecFunc(), and C4AulScriptFunc::ParseDirectExecStatement().
|
protected |
Definition at line 1277 of file C4AulParse.cpp.
References ATT_BCLOSE, ATT_BOPEN, ATT_IDTF, C4AUL_While, Parse_Expression(), Parse_Statement(), SEqual(), and Shift().
Referenced by Parse_Statement().
|
protected |
Definition at line 1380 of file C4AulParse.cpp.
References ATT_BCLOSE, ATT_BCLOSE2, ATT_BLOPEN, ATT_BOPEN, ATT_BOPEN2, ATT_CALL, ATT_CALLFS, ATT_COLON, ATT_DOT, ATT_IDTF, ATT_INT, ATT_OPERATOR, ATT_SET, ATT_STRING, C4AUL_Do, C4AUL_Else, C4AUL_False, C4AUL_For, C4AUL_Func, C4AUL_If, C4AUL_New, C4AUL_Nil, C4AUL_Par, C4AUL_Return, C4AUL_this, C4AUL_True, C4AUL_While, C4AulParseError, C4ScriptOpMap, aul::ast::CallExpr::callee, C4ScriptOpDef::Changer, aul::ast::CallExpr::context, C4String::GetCStr(), C4ScriptOpDef::Identifier, C4ScriptOpDef::NoSecondStatement, Parse_Array(), Parse_PropList(), C4ScriptOpDef::Postfix, C4ScriptOpDef::Priority, aul::ast::CallExpr::safe_call, SEqual(), and Shift().
Referenced by Parse_Array(), Parse_DirectExec(), Parse_DoWhile(), Parse_For(), Parse_ForEach(), Parse_If(), Parse_PropList(), Parse_Statement(), Parse_Var(), and Parse_While().
|
protected |
Definition at line 1323 of file C4AulParse.cpp.
References ATT_BCLOSE, ATT_BOPEN, ATT_IDTF, ATT_SCOLON, C4AUL_VarNamed, Parse_Expression(), Parse_Statement(), Parse_Var(), and SEqual().
Referenced by Parse_Statement().
|
protected |
Definition at line 1356 of file C4AulParse.cpp.
References ATT_BCLOSE, ATT_BOPEN, ATT_IDTF, C4AUL_In, C4AUL_VarNamed, Parse_Expression(), Parse_Statement(), SEqual(), and Shift().
Referenced by Parse_Statement().
|
protected |
Definition at line 1305 of file C4AulParse.cpp.
References ATT_BCLOSE, ATT_BOPEN, ATT_IDTF, C4AUL_Else, Parse_Expression(), Parse_Statement(), SEqual(), and Shift().
Referenced by Parse_Statement().
|
protected |
Definition at line 1241 of file C4AulParse.cpp.
References ATT_BLCLOSE, ATT_BLOPEN, ATT_COLON, ATT_COMMA, ATT_IDTF, ATT_SET, ATT_STRING, C4AUL_New, C4String::GetCStr(), C4StringTable::P, P_Prototype, Parse_Expression(), SEqual(), Shift(), and Strings.
Referenced by Parse_Expression().
std::unique_ptr<::aul::ast::Script > C4AulParse::Parse_Script | ( | C4ScriptHost * | scripthost | ) |
Definition at line 878 of file C4AulParse.cpp.
References ATT_DIR, ATT_EOF, ATT_IDTF, ATT_OPERATOR, ATT_SCOLON, C4AUL_Append, C4AUL_GlobalNamed, C4AUL_Include, C4AUL_LocalNamed, C4AulParseError, C4ScriptOpMap, C4AulScriptEngine::errCnt, C4AulScriptEngine::ErrorHandler, StdStrBuf::getData(), C4PropList::GetDef(), C4ScriptHost::GetPropList(), C4AulErrorHandler::OnError(), Parse_ToplevelFunctionDecl(), Parse_Var(), C4ScriptHost::Script, ScriptEngine, SEqual(), Shift(), and C4AulError::what().
Referenced by C4ScriptHost::Preparse().
|
protected |
Definition at line 1062 of file C4AulParse.cpp.
References ATT_BLOPEN, ATT_BOPEN, ATT_BOPEN2, ATT_IDTF, ATT_INT, ATT_OPERATOR, ATT_SCOLON, ATT_SET, ATT_STRING, C4AUL_Break, C4AUL_Continue, C4AUL_Do, C4AUL_Else, C4AUL_For, C4AUL_Func, C4AUL_Global, C4AUL_GlobalNamed, C4AUL_If, C4AUL_In, C4AUL_LocalNamed, C4AUL_Private, C4AUL_Protected, C4AUL_Public, C4AUL_Return, C4AUL_VarNamed, C4AUL_While, C4AulParseError, Parse_Block(), Parse_DoWhile(), Parse_Expression(), Parse_For(), Parse_ForEach(), Parse_If(), Parse_Var(), Parse_While(), SEqual(), and Shift().
Referenced by Parse_Block(), Parse_DoWhile(), Parse_For(), Parse_ForEach(), Parse_If(), and Parse_While().
|
protected |
Definition at line 964 of file C4AulParse.cpp.
References ATT_IDTF, C4AUL_Func, C4AUL_Global, C4AUL_Private, C4AUL_Protected, C4AUL_Public, SEqual(), and Shift().
Referenced by Parse_DirectExec(), and Parse_Script().
|
protected |
Definition at line 1644 of file C4AulParse.cpp.
References ATT_COMMA, ATT_IDTF, ATT_SCOLON, ATT_SET, C4AUL_Const, C4AUL_GlobalNamed, C4AUL_LocalNamed, C4AUL_VarNamed, aul::ast::VarDecl::Func, aul::ast::VarDecl::Global, aul::ast::VarDecl::Object, Parse_Expression(), SEqual(), and Shift().
Referenced by Parse_For(), Parse_Script(), and Parse_Statement().
|
protected |
Definition at line 1292 of file C4AulParse.cpp.
References ATT_BCLOSE, ATT_BOPEN, Parse_Expression(), Parse_Statement(), and Shift().
Referenced by Parse_Statement().
|
protected |
Definition at line 760 of file C4AulParse.cpp.
Referenced by Parse_Array(), Parse_Block(), Parse_DirectExec(), Parse_DoWhile(), Parse_Expression(), Parse_ForEach(), Parse_If(), Parse_PropList(), Parse_Script(), Parse_Statement(), Parse_ToplevelFunctionDecl(), Parse_Var(), and Parse_While().
|
friend |
Definition at line 102 of file C4AulParse.h.
Referenced by Parse_Expression(), Parse_Script(), and Parse_Statement().