internal override void CompileBy(FunctionCompiler compiler, bool isLastOperator) { Operand.CompileBy(compiler, false); compiler.Emitter.Emit(OpCode.Pop); if (!isLastOperator) { compiler.Emitter.Emit(OpCode.LdUndefined); } }
internal override void CompileBy(FunctionCompiler compiler, bool isLastOperator) { Operand.CompileBy(compiler, false); if (isLastOperator) { compiler.Emitter.Emit(OpCode.Pop); } else { if (Operand.CanBeObject) { compiler.Emitter.Emit(OpCode.CastToPrimitive); } compiler.Emitter.Emit(OpCode.Pos); } }
internal override void CompileBy(FunctionCompiler compiler, bool isLastOperator) { Operand.CompileBy(compiler, false); compiler.Emitter.Emit(isLastOperator ? OpCode.Pop : OpCode.TypeOf); }
internal override void CompileBy(FunctionCompiler compiler, bool isLastOperator) { Operand.CompileBy(compiler, isLastOperator); }