Example #1
0
 public override void EmitCreateInstance(CompilerContext ctx)
 {
     using (Compiler.Local builder = new Compiler.Local(ctx, _builderFactory.ReturnType))
     {
         ctx.EmitCall(_builderFactory);
         ctx.LoadAddress(builder, builder.Type);
         ctx.EmitCall(_finish);
         ctx.CopyValue();
         ctx.CastToObject(ExpectedType);
         ctx.EmitCallNoteObject();
     }
 }