internal override void Init(BaseScripter scripter, Module m)
 {
     base.Init(scripter, m);
     this.variable_initializers.Clear();
     this.static_variable_initializers.Clear();
     this.param_ids.Clear();
     this.param_type_ids.Clear();
     this.param_mods.Clear();
     this.local_variables.Clear();
     this.ACCESSOR_SWITCH = false;
     this.has_constructor = false;
     this.no_gen = false;
     this.valid_this_context = false;
     this.assign_operators.Clear();
     this.assign_operators.Add("=", base.code.OP_ASSIGN);
     this.assign_operators.Add("+=", base.code.OP_PLUS);
     this.assign_operators.Add("-=", base.code.OP_MINUS);
     this.assign_operators.Add("*=", base.code.OP_MULT);
     this.assign_operators.Add("/=", base.code.OP_DIV);
     this.assign_operators.Add("%=", base.code.OP_MOD);
     this.assign_operators.Add("&=", base.code.OP_BITWISE_AND);
     this.assign_operators.Add("|=", base.code.OP_BITWISE_OR);
     this.assign_operators.Add("^=", base.code.OP_BITWISE_XOR);
     this.assign_operators.Add("<<=", base.code.OP_LEFT_SHIFT);
     this.assign_operators.Add(">>=", base.code.OP_RIGHT_SHIFT);
     this.relational_operators.Clear();
     this.relational_operators.Add(">", base.code.OP_GT);
     this.relational_operators.Add("<", base.code.OP_LT);
     this.relational_operators.Add(">=", base.code.OP_GE);
     this.relational_operators.Add("<=", base.code.OP_LE);
     this.relational_operators.Add("is", base.code.OP_IS);
     this.relational_operators.Add("as", base.code.OP_AS);
     this.shift_operators.Clear();
     this.shift_operators.Add("<<", base.code.OP_LEFT_SHIFT);
     this.shift_operators.Add(">>", base.code.OP_RIGHT_SHIFT);
     this.additive_operators.Clear();
     this.additive_operators.Add("+", base.code.OP_PLUS);
     this.additive_operators.Add("-", base.code.OP_MINUS);
     this.multiplicative_operators.Clear();
     this.multiplicative_operators.Add("*", base.code.OP_MULT);
     this.multiplicative_operators.Add("/", base.code.OP_DIV);
     this.multiplicative_operators.Add("%", base.code.OP_MOD);
     this.overloadable_unary_operators.Clear();
     this.overloadable_unary_operators.AddObject("+", base.code.OP_UNARY_PLUS);
     this.overloadable_unary_operators.AddObject("-", base.code.OP_UNARY_MINUS);
     this.overloadable_unary_operators.AddObject("!", base.code.OP_NOT);
     this.overloadable_unary_operators.AddObject("~", base.code.OP_COMPLEMENT);
     this.overloadable_unary_operators.AddObject("++", base.code.OP_INC);
     this.overloadable_unary_operators.AddObject("--", base.code.OP_DEC);
     this.overloadable_unary_operators.AddObject("true", base.code.OP_TRUE);
     this.overloadable_unary_operators.AddObject("false", base.code.OP_TRUE);
     this.overloadable_binary_operators.Clear();
     this.overloadable_binary_operators.AddObject("+", base.code.OP_PLUS);
     this.overloadable_binary_operators.AddObject("-", base.code.OP_MINUS);
     this.overloadable_binary_operators.AddObject("*", base.code.OP_MULT);
     this.overloadable_binary_operators.AddObject("/", base.code.OP_DIV);
     this.overloadable_binary_operators.AddObject("%", base.code.OP_MOD);
     this.overloadable_binary_operators.AddObject("&", base.code.OP_BITWISE_AND);
     this.overloadable_binary_operators.AddObject("|", base.code.OP_BITWISE_OR);
     this.overloadable_binary_operators.AddObject("^", base.code.OP_BITWISE_XOR);
     this.overloadable_binary_operators.AddObject("<<", base.code.OP_LEFT_SHIFT);
     this.overloadable_binary_operators.AddObject(">>", base.code.OP_RIGHT_SHIFT);
     this.overloadable_binary_operators.AddObject("==", base.code.OP_EQ);
     this.overloadable_binary_operators.AddObject("!=", base.code.OP_NE);
     this.overloadable_binary_operators.AddObject(">", base.code.OP_GT);
     this.overloadable_binary_operators.AddObject("<", base.code.OP_LT);
     this.overloadable_binary_operators.AddObject(">=", base.code.OP_GE);
     this.overloadable_binary_operators.AddObject("<=", base.code.OP_LE);
 }
Beispiel #2
0
 internal override void Init(BaseScripter scripter, Module m)
 {
     base.Init(scripter, m);
     this.variable_initializers.Clear();
     this.static_variable_initializers.Clear();
     this.param_ids.Clear();
     this.param_type_ids.Clear();
     this.param_mods.Clear();
     this.local_variables.Clear();
     this.has_constructor = false;
     this.valid_this_context = false;
     this.explicit_intf_id = 0;
     this.curr_prop_id = 0;
     this.new_type_id = 0;
     this.SKIP_STATEMENT_TERMINATOR = false;
     this.OPTION_STRICT = true;
     this.typeof_expression = false;
     this.for_loop_stack.Clear();
     this.exit_kind_stack.Clear();
     this.with_stack.Clear();
 }
Beispiel #3
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;
 }
 internal override void Init(BaseScripter scripter, Module m)
 {
     base.Init(scripter, m);
     this.variable_initializers.Clear();
     this.static_variable_initializers.Clear();
     this.param_ids.Clear();
     this.param_type_ids.Clear();
     this.param_mods.Clear();
     this.local_variables.Clear();
     this.has_constructor = false;
     this.valid_this_context = false;
 }
Beispiel #5
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;
 }