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); } }
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); } }
public override void Emit(EmitContext ec) { Invocation.EmitCall(ec, Child, NullableInfo.GetValue(Child.Type), null, loc); }
public void EmitCheck(EmitContext ec) { Store(ec); Invocation.EmitCall(ec, this, NullableInfo.GetHasValue(expr.Type), null, loc); }
public void EmitCheck(EmitContext ec) { Store(ec); Invocation.EmitCall(ec, false, this, info.HasValue, null, loc); }