/// <summary>
        /// Creates a standard header based dictionary parser
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="separator">XSV separator</param>
        /// <param name="objectAdapter">Adapter from dictionary to object</param>
        /// <returns></returns>
        public static IFactory <IAdapter <string, T>, string> CreateXsvToObjectFactory <T>(char separator, IAdapter <IReadOnlyDictionary <string, string>, T> objectAdapter)
        {
            var xsvSplitter = new CharSplitAdapter(separator);

            return(new XsvToObjectAdapterFactory <T>(xsvSplitter, xsvSplitter, objectAdapter));
        }
        /// <summary>
        /// Creates a standard header based xsv to dictionary adapter
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="separator">XSV separator</param>
        /// <param name="objectAdapter">Adapter from dictionary to object</param>
        /// <returns></returns>
        public static IFactory <IAdapter <string, IReadOnlyDictionary <string, string> >, string> CreateXsvToDictionaryFactory <T>(char separator)
        {
            var xsvSplitter = new CharSplitAdapter(separator);

            return(new XsvToDictionaryAdapterFactory <T>(xsvSplitter, xsvSplitter));
        }