Exemple #1
0
        public void Test_NullableRefOfT_CreateNullableRefOfT_ExplicitCastOfT()
        {
            int value     = 42;
            var reference = new NullableRef <int>(ref value);

            Assert.AreEqual(value, (int)reference);
        }
Exemple #2
0
        public void Test_NullableRefOfT_CreateNullableRefOfT_ImplicitRefCast()
        {
            int value     = 42;
            var reference = new Ref <int>(ref value);
            NullableRef <int> nullableRef = reference;

            Assert.IsTrue(nullableRef.HasValue);
            Assert.IsTrue(Unsafe.AreSame(ref reference.Value, ref nullableRef.Value));
        }
Exemple #3
0
        public Permission(IStorage storage, String name, IBotGroup group)
        {
            _storage = storage;
            Name = name;
            Group = group;

            _allowed = _storage.Get<NullableRef<bool>>(Group.Name, Name, ALLOWED_QUALIFIER);
            _limit = _storage.Get<NullableRef<ushort>>(Group.Name, Name, LIMIT_QUALIFIER);
            _timespan = _storage.Get<NullableRef<TimeSpan>>(Group.Name, Name, TIMESPAN_QUALIFIER);
        }
Exemple #4
0
        public void Test_NullableRefOfT_CreateNullableRefOfT_Ok()
        {
            int value     = 1;
            var reference = new NullableRef <int>(ref value);

            Assert.IsTrue(reference.HasValue);
            Assert.IsTrue(Unsafe.AreSame(ref value, ref reference.Value));

            reference.Value++;

            Assert.AreEqual(value, 2);
        }
Exemple #5
0
        public void Test_NullableRefOfT_CreateNullableRefOfT_ExplicitCastOfT_Exception()
        {
            NullableRef <int> invalid = default;

            _ = (int)invalid;
        }
Exemple #6
0
        public void Test_NullableRefOfT_CreateNullableRefOfT_Null_Exception()
        {
            NullableRef <int> reference = default;

            _ = reference.Value;
        }
Exemple #7
0
        public void Test_RefOfT_CreateNullableRefOfT_Null()
        {
            NullableRef <int> reference = default;

            Assert.IsFalse(reference.HasValue);
        }