public void Test_RefOfT_CreateRefOfT()
        {
            var model     = new ReadOnlyFieldOwner();
            var reference = new ReadOnlyRef <int>(model, model.Value);

            Assert.IsTrue(Unsafe.AreSame(ref Unsafe.AsRef(model.Value), ref Unsafe.AsRef(reference.Value)));
        }
        public void Test_RefOfT_CreateRefOfT()
        {
            int value     = 1;
            var reference = new ReadOnlyRef <int>(value);

            Assert.IsTrue(Unsafe.AreSame(ref value, ref Unsafe.AsRef(reference.Value)));
        }
        public void Test_NullableReadOnlyRefOfT_CreateNullableReadOnlyRefOfT_ImplicitReadOnlyRefCast()
        {
            int value     = 42;
            var reference = new ReadOnlyRef <int>(value);
            NullableReadOnlyRef <int> nullableRef = reference;

            Assert.IsTrue(nullableRef.HasValue);
            Assert.IsTrue(Unsafe.AreSame(ref Unsafe.AsRef(reference.Value), ref Unsafe.AsRef(nullableRef.Value)));
        }