internal override void TranslateToIL(ILGenerator il, Type rtype){
Label else_label = il.DefineLabel();
Label endif_label = il.DefineLabel();
this.condition.TranslateToConditionalBranch(il, false, else_label, false);
this.operand1.TranslateToIL(il, rtype);
il.Emit(OpCodes.Br, endif_label);
il.MarkLabel(else_label);
this.operand2.TranslateToIL(il, rtype);
il.MarkLabel(endif_label);
}