Pol
Revision:cb584c9
|
#include <compiler.h>
Public Member Functions | |
void | addvalue () |
void | addvar (const std::string &varname, const CompilerContext &ctx, bool warn_on_notused=true, bool unused=false) |
const BlockDesc & | blockdesc () const |
bool | inblock () const |
unsigned int | numVariables () const |
unsigned | numVarsInBlock () const |
void | popblock (bool varsOnly) |
BlockDesc & | pushblock () |
bool | varexists (const std::string &varname, unsigned &idx) const |
bool | varexists (const std::string &varname) const |
Private Attributes | |
std::vector< BlockDesc > | blockdescs_ |
Variables | variables_ |
Friends | |
class | Compiler |
Definition at line 96 of file compiler.h.
void Pol::Bscript::Scope::addvalue | ( | ) |
Definition at line 149 of file compiler.cpp.
References blockdescs_.
void Pol::Bscript::Scope::addvar | ( | const std::string & | varname, |
const CompilerContext & | ctx, | ||
bool | warn_on_notused = true , |
||
bool | unused = false |
||
) |
Definition at line 130 of file compiler.cpp.
References blockdescs_, Pol::Bscript::Variable::ctx, Pol::Bscript::Variable::name, name, Pol::Clib::stringicmp(), Pol::Bscript::Variable::unused, Pol::Bscript::Variable::used, and variables_.
Referenced by Pol::Bscript::Compiler::handleBracketedFor_basic(), Pol::Bscript::Compiler::handleBracketedFunction(), Pol::Bscript::Compiler::handleBracketedFunction3(), Pol::Bscript::Compiler::handleForEach(), Pol::Bscript::Compiler::handleFunction(), Pol::Bscript::Compiler::handleProgram2(), and Pol::Bscript::Compiler::handleVarDeclare().
|
inline |
Definition at line 106 of file compiler.h.
|
inline |
Definition at line 104 of file compiler.h.
Referenced by Pol::Bscript::Compiler::inGlobalScope().
|
inline |
Definition at line 109 of file compiler.h.
Referenced by Pol::Bscript::Compiler::handleVarDeclare().
|
inline |
Definition at line 105 of file compiler.h.
Referenced by Pol::Bscript::Compiler::handleVarDeclare().
void Pol::Bscript::Scope::popblock | ( | bool | varsOnly = false | ) |
Definition at line 108 of file compiler.cpp.
References blockdescs_, Pol::Bscript::compilercfg, Pol::Bscript::Variable::ctx, Pol::Bscript::CompilerConfig::DisplayWarnings, Pol::Bscript::CompilerConfig::ErrorOnWarning, INFO_PRINT, Pol::Bscript::Variable::name, Pol::Bscript::Variable::unused, Pol::Bscript::Variable::used, Pol::Bscript::BlockDesc::varcount, and variables_.
Referenced by Pol::Bscript::Compiler::handleBracketedFor_basic(), Pol::Bscript::Compiler::handleBracketedFunction3(), Pol::Bscript::Compiler::handleBracketedWhile(), Pol::Bscript::Compiler::handleDoClause(), Pol::Bscript::Compiler::handleForEach(), Pol::Bscript::Compiler::handleRepeatUntil(), and Pol::Bscript::Compiler::handleSwitch().
BlockDesc & Pol::Bscript::Scope::pushblock | ( | ) |
Definition at line 102 of file compiler.cpp.
References blockdescs_.
bool Pol::Bscript::Scope::varexists | ( | const std::string & | varname, |
unsigned & | idx | ||
) | const |
Definition at line 69 of file compiler.cpp.
References Pol::Bscript::compilercfg, Pol::Bscript::CompilerConfig::DisplayWarnings, Pol::Bscript::CompilerConfig::ErrorOnWarning, INFO_PRINT, name, Pol::Clib::stringicmp(), and variables_.
Referenced by Pol::Bscript::Compiler::convert_variables(), Pol::Bscript::Compiler::handleBracketedFor_basic(), Pol::Bscript::Compiler::handleProgram2(), and Pol::Bscript::Compiler::varexists().
bool Pol::Bscript::Scope::varexists | ( | const std::string & | varname | ) | const |
Definition at line 90 of file compiler.cpp.
References name, Pol::Clib::stringicmp(), and variables_.
|
friend |
Definition at line 117 of file compiler.h.
|
private |
Definition at line 116 of file compiler.h.
Referenced by addvalue(), addvar(), Pol::Bscript::Compiler::handleContinue(), Pol::Bscript::Compiler::insertBreak(), popblock(), and pushblock().
|
private |
Definition at line 112 of file compiler.h.
Referenced by addvar(), popblock(), and varexists().