/// <summary>
        /// Gets all resource or resource identifier json:api meta objects for the given CLR resource type.
        /// </summary>
        /// <typeparam name="TResource">Type of CLR resource or resource identifier to get meta collection for.</typeparam>
        /// <returns>Collection of <c>Meta</c> objects in document order.</returns>
        public static IEnumerable <Meta> GetResourceMetaCollection <TResource>(this IDocumentReader documentReader)
            where TResource : class, IResource
        {
            Contract.Requires(documentReader != null);

            var clrResourceType           = typeof(TResource);
            var apiResourceMetaCollection = documentReader.GetResourceMetaCollection(clrResourceType);

            return(apiResourceMetaCollection);
        }