/// <summary>Get the API enumeration type by CLR type object.</summary>
        /// <typeparam name="TEnumeration">CLR type to lookup the API enumeration type by.</typeparam>
        /// <returns>The API enumeration type in the API schema, otherwise an exception is thrown.</returns>
        /// <exception cref="ApiSchemaException"></exception>
        public static IApiEnumerationType GetApiEnumerationType <TEnumeration>(this IApiSchema apiSchema)
        {
            Contract.Requires(apiSchema != null);

            var clrType = typeof(TEnumeration);

            return(apiSchema.GetApiEnumerationType(clrType));
        }