예제 #1
0
        public void StatefulMarshallerInstanceGetPinnableReferenceMarshalling()
        {
            int originalValue = 42;
            var wrapper       = new IntWrapperWithoutGetPinnableReference {
                i = originalValue
            };

            var retVal = NativeExportsNE.Stateful.DoubleIntRefNoAlloc(wrapper);

            Assert.Equal(originalValue * 2, wrapper.i);
            Assert.Equal(originalValue * 2, retVal.i);
        }
예제 #2
0
        public void MarshallerStaticGetPinnableReferenceMarshalling()
        {
            int originalValue = 42;
            var wrapper       = new IntWrapperWithoutGetPinnableReference {
                i = originalValue
            };

            var retVal = NativeExportsNE.Stateless.DoubleIntRef(wrapper);

            Assert.Equal(originalValue * 2, wrapper.i);
            Assert.Equal(originalValue * 2, retVal.i);
        }
예제 #3
0
 public static partial IntWrapperWithoutGetPinnableReference DoubleIntRef(IntWrapperWithoutGetPinnableReference pInt);