コード例 #1
0
        /// <summary>
        ///		Tries to get a reader, returning a success <see langword="bool"/> instead of throwing
        /// </summary>
        /// <param name="reader">The reader, if it was found</param>
        /// <typeparam name="T">The type to get the reader for</typeparam>
        public bool TryGet <T>([MaybeNullWhen(false)] out DelayedReader <T> reader) where T : notnull
        {
            if (TryGet(typeof(T), out var obj))
            {
                reader = (DelayedReader <T>)obj;
                return(true);
            }

            reader = null;
            return(false);
        }
コード例 #2
0
 /// <summary>
 ///		Creates an instance of <see cref="DelayedTypedFileHandle{T}"/>
 /// </summary>
 /// <param name="handle">The raw file handle to deserialize</param>
 /// <param name="reader">The delayed reader responsible for deserialization</param>
 public DelayedTypedFileHandle(IFileHandle handle, DelayedReader <T> reader) : base(handle, reader)
 {
 }
コード例 #3
0
 /// <summary>
 ///		Adds a reader to the collection
 /// </summary>
 /// <param name="reader">The reader to add</param>
 /// <typeparam name="T">The type the reader is responsible for</typeparam>
 public void Add <T>(DelayedReader <T> reader) where T : notnull
 {
     Add(typeof(T), reader);
 }