Exemplo n.º 1
0
 internal BaseScripter(CSLite_Scripter owner)
 {
     this.Owner = owner;
     this.symbol_table = new SymbolTable(this);
     this.code = new Code(this);
     this.module_list = new ModuleList(this);
     this.parser_list = new ParserList();
     this.Error_List = new ErrorList(this);
     this.Warning_List = new ErrorList(this);
     this.PPDirectiveList = new StringList(false);
     this.RegisteredTypes = new RegisteredTypeList();
     this.RegisteredNamespaces = new StringList(false);
     this.UserTypes = new Hashtable();
     this.UserNamespaces = new StringList(false);
     this.ForbiddenNamespaces = new StringList(false);
     this.UserInstances = new Hashtable();
     this.UserVariables = new Hashtable();
     this.OperatorHelpers = new Hashtable();
     this.available_types = new StringList(false);
     this.ForbiddenTypes = new StringList(false);
     this.EntryId = 0;
     this.event_dispatcher = new EventDispatcher(this, "CSLiteEventDispatcher");
     if (CSLite_Scripter.AUTO_IMPORTING_SWITCH)
     {
         this.RegisterAvailableNamespaces();
     }
 }
Exemplo n.º 2
0
 internal void InitExpression(BaseScripter scripter, Module m, int sub_id, string expr)
 {
     this.scripter = scripter;
     this.code = scripter.code;
     this.symbol_table = scripter.symbol_table;
     this.scanner.Init(scripter, expr);
     this.temp_count = 0;
     this.curr_module = m.NameIndex;
     this.level_stack.Clear();
     this.level_stack.Push(0);
     this.level_stack.Push(sub_id);
     this.block_count = 0;
     this.block_stack.Clear();
     this.block_stack.Push(0);
     this.block_list.Clear();
     this.DECLARE_SWITCH = false;
 }
Exemplo n.º 3
0
 internal virtual void Init(BaseScripter scripter, Module m)
 {
     this.scripter = scripter;
     this.code = scripter.code;
     this.symbol_table = scripter.symbol_table;
     this.scanner.Init(scripter, m.Text);
     this.temp_count = 0;
     this.curr_module = m.NameIndex;
     this.level_stack.Clear();
     this.level_stack.Push(0);
     this.level_stack.Push(this.RootNamespaceId);
     this.block_count = 0;
     this.block_stack.Clear();
     this.block_stack.Push(0);
     this.block_list.Clear();
     this.DECLARE_SWITCH = false;
     this.DECLARATION_CHECK_SWITCH = false;
 }