コード例 #1
0
 // FIXME: This code has not been called in any test case when the
 //        new ArrayMarshaller was written.
 //        Apparently it only frees slots.
 //        For now the code simply returns without freeing.
 /// <param name="classPrimitive"></param>
 public void DeletePrimitiveEmbedded(StatefulBuffer buffer, PrimitiveTypeMetadata
                                     classPrimitive)
 {
     buffer.ReadInt();
     //int address = a_bytes.readInt();
     buffer.ReadInt();
 }
コード例 #2
0
        private void AssertPrimitiveHandlerDelegate(Type expectedClass, PrimitiveTypeMetadata
                                                    primitiveMetadata, int version)
        {
            ITypeHandler4 correctTypeHandler = (ITypeHandler4)CorrectHandlerVersion(primitiveMetadata
                                                                                    .TypeHandler(), version);

            Assert.AreSame(expectedClass, correctTypeHandler.GetType());
        }
コード例 #3
0
        public virtual void TestCorrectHandlerVersion()
        {
            OpenTypeHandler openTypeHandler = new OpenTypeHandler(Container());

            AssertCorrectedHandlerVersion(typeof(OpenTypeHandler0), openTypeHandler, -1);
            AssertCorrectedHandlerVersion(typeof(OpenTypeHandler0), openTypeHandler, 0);
            AssertCorrectedHandlerVersion(typeof(OpenTypeHandler2), openTypeHandler, 1);
            AssertCorrectedHandlerVersion(typeof(OpenTypeHandler2), openTypeHandler, 2);
            AssertCorrectedHandlerVersion(typeof(OpenTypeHandler), openTypeHandler, HandlerRegistry
                                          .HandlerVersion);
            AssertCorrectedHandlerVersion(typeof(OpenTypeHandler), openTypeHandler, HandlerRegistry
                                          .HandlerVersion + 1);
            StandardReferenceTypeHandler stdReferenceHandler = new StandardReferenceTypeHandler
                                                                   (ItemClassMetadata());

            AssertCorrectedHandlerVersion(typeof(StandardReferenceTypeHandler0), stdReferenceHandler
                                          , 0);
            AssertCorrectedHandlerVersion(typeof(StandardReferenceTypeHandler), stdReferenceHandler
                                          , 2);
            PrimitiveTypeMetadata primitiveMetadata = new PrimitiveTypeMetadata(Container(),
                                                                                openTypeHandler, 0, null);

            AssertPrimitiveHandlerDelegate(typeof(OpenTypeHandler0), primitiveMetadata, 0);
            AssertPrimitiveHandlerDelegate(typeof(OpenTypeHandler2), primitiveMetadata, 1);
            AssertPrimitiveHandlerDelegate(typeof(OpenTypeHandler2), primitiveMetadata, 2);
            AssertPrimitiveHandlerDelegate(typeof(OpenTypeHandler), primitiveMetadata, HandlerRegistry
                                           .HandlerVersion);
            ArrayHandler arrayHandler = new ArrayHandler(openTypeHandler, false);

            AssertCorrectedHandlerVersion(typeof(ArrayHandler0), arrayHandler, 0);
            AssertCorrectedHandlerVersion(typeof(ArrayHandler1), arrayHandler, 1);
            AssertCorrectedHandlerVersion(typeof(ArrayHandler3), arrayHandler, 2);
            AssertCorrectedHandlerVersion(typeof(ArrayHandler3), arrayHandler, 3);
            AssertCorrectedHandlerVersion(typeof(ArrayHandler), arrayHandler, HandlerRegistry
                                          .HandlerVersion);
            ArrayHandler multidimensionalArrayHandler = new MultidimensionalArrayHandler(openTypeHandler
                                                                                         , false);

            AssertCorrectedHandlerVersion(typeof(MultidimensionalArrayHandler0), multidimensionalArrayHandler
                                          , 0);
            AssertCorrectedHandlerVersion(typeof(MultidimensionalArrayHandler3), multidimensionalArrayHandler
                                          , 1);
            AssertCorrectedHandlerVersion(typeof(MultidimensionalArrayHandler3), multidimensionalArrayHandler
                                          , 2);
            AssertCorrectedHandlerVersion(typeof(MultidimensionalArrayHandler3), multidimensionalArrayHandler
                                          , 3);
            AssertCorrectedHandlerVersion(typeof(MultidimensionalArrayHandler), multidimensionalArrayHandler
                                          , HandlerRegistry.HandlerVersion);
        }
コード例 #4
0
ファイル: ArrayHandler.cs プロジェクト: masroore/db4o
 // FIXME: This code has not been called in any test case when the 
 //        new ArrayMarshaller was written.
 //        Apparently it only frees slots.
 //        For now the code simply returns without freeing.
 /// <param name="classPrimitive"></param>
 public void DeletePrimitiveEmbedded(StatefulBuffer buffer, PrimitiveTypeMetadata
     classPrimitive)
 {
     buffer.ReadInt();
     //int address = a_bytes.readInt();
     buffer.ReadInt();
 }