/// <summary>
 /// Parses the sequences from the open file.
 /// </summary>
 /// <param name="parser">Sequence Parser</param>
 /// <param name="filename">File to parse</param>
 /// <returns>Set of parsed sequences.</returns>
 public static ISequenceAlignment ParseOne(this ISequenceAlignmentParser parser, string filename)
 {
     using (var fs = File.OpenRead(filename))
         return(parser.ParseOne(fs));
 }
 /// <summary>
 /// Parses the sequences from the open file.
 /// </summary>
 /// <param name="parser">Sequence Parser</param>
 /// <param name="filename">File to parse</param>
 /// <returns>Set of parsed sequences.</returns>
 public static T ParseOne <T>(this ISequenceAlignmentParser parser, string filename)
     where T : ISequenceAlignment
 {
     using (var fs = File.OpenRead(filename))
         return((T)parser.ParseOne(fs));
 }
        /// <summary>
        /// Parses the sequences from the open file.
        /// </summary>
        /// <param name="parser">Sequence Parser</param>
        /// <returns>Set of parsed sequences.</returns>
        public static ISequenceAlignment ParseOne(this ISequenceAlignmentParser parser)
        {
            var fs = ParserFormatterExtensions <ISequenceAlignmentParser> .GetOpenStream(parser, false);

            return(parser.ParseOne(fs));
        }