Example #1
0
 public override void Emit(EmitContext ec)
 {
     Store(ec);
     if (useDefaultValue)
     {
         Invocation.EmitCall(ec, this, NullableInfo.GetGetValueOrDefault(expr.Type), null, loc);
     }
     else
     {
         Invocation.EmitCall(ec, this, NullableInfo.GetValue(expr.Type), null, loc);
     }
 }
Example #2
0
 public override void Emit(EmitContext ec)
 {
     Store(ec);
     if (useDefaultValue)
     {
         Invocation.EmitCall(ec, false, this, info.GetValueOrDefault, null, loc);
     }
     else
     {
         Invocation.EmitCall(ec, false, this, info.Value, null, loc);
     }
 }
Example #3
0
 public override void Emit(EmitContext ec)
 {
     Invocation.EmitCall(ec, Child, NullableInfo.GetValue(Child.Type), null, loc);
 }
Example #4
0
 public void EmitCheck(EmitContext ec)
 {
     Store(ec);
     Invocation.EmitCall(ec, this, NullableInfo.GetHasValue(expr.Type), null, loc);
 }
Example #5
0
 public void EmitCheck(EmitContext ec)
 {
     Store(ec);
     Invocation.EmitCall(ec, false, this, info.HasValue, null, loc);
 }