本文整理汇总了C#中CodeGenContext类的典型用法代码示例。如果您正苦于以下问题:C#CodeGenContext类的具体用法?C#CodeGenContext怎么用?C#CodeGenContext使用的例子?这里精选的类代码示例或许可以为您提供帮助。
示例1:GenerateWriterMethod publicvoidGenerateWriterMethod(Typetype,CodeGenContextctx,ILGeneratoril) { //arg0:Serializer,arg1:Stream,arg2:value
varfields=Helpers.GetFieldInfos(type);
foreach(varfieldinfields) { //Note:theuserdefinedvaluetypeisnotpassedasreference.couldcauseperfproblemswithbigstructs
varfieldType=field.FieldType;
vardata=ctx.GetTypeDataForCall(fieldType);
if(data.NeedsInstanceParameter) il.Emit(OpCodes.Ldarg_0);
il.Emit(OpCodes.Ldarg_1); if(type.IsValueType) il.Emit(OpCodes.Ldarga_S,2); else il.Emit(OpCodes.Ldarg_2); il.Emit(OpCodes.Ldfld,field);
il.Emit(OpCodes.Call,data.WriterMethodInfo); }
il.Emit(OpCodes.Ret); }
原文链接:
http://www.jxszl.com/biancheng/C/556800.html