コード例 #1
0
        protected override ILGenerator WeaveAction(ILGenerator ilGenerator)
        {
            byRefArgumentStoreWeaver.StoreArgsIfNeeded(ilGenerator);
            argumentsWeaver.Weave(ilGenerator);
            ilGenerator.Emit(OpCodes.Callvirt, MethodInfoImpl);
            byRefArgumentStoreWeaver.RestoreArgsIfNeeded(ilGenerator);

            return(ilGenerator);
        }
コード例 #2
0
        protected override ILGenerator WeaveAction(ILGenerator ilGenerator)
        {
            var aspectArgumentContract = methodInfoImpl.ToAspectArgumentContract();

            byRefArgumentsStoreWeaver.StoreArgsIfNeeded(ilGenerator);
            argumentsWeaver.Weave(ilGenerator);
            ilGenerator.Emit(OpCodes.Callvirt, methodInfoImpl);
            byRefArgumentsStoreWeaver.RestoreArgsIfNeeded(ilGenerator);

            return(ilGenerator);
        }