def parse_line(self, line):
        """Parse VCF header ``line`` (trailing '\r\n' or '\n' is ignored)

        :param str line: ``str`` with line to parse
        :param dict sub_parsers: ``dict`` mapping header line types to
            appropriate parser objects
        :returns: appropriate :py:class:`HeaderLine` parsed from ``line``
        :raises: :py:class:`vcfpy.exceptions.InvalidHeaderException` if
            there was a problem parsing the file
        """
        if not line or not line.startswith("##"):
            raise exceptions.InvalidHeaderException(
                'Invalid VCF header line (must start with "##") {}'.format(line)
            )
        if "=" not in line:
            raise exceptions.InvalidHeaderException(
                'Invalid VCF header line (must contain "=") {}'.format(line)
            )
        line = line[len("##") :].rstrip()  # trim '^##' and trailing whitespace
        # split key/value pair at "="
        key, value = split_mapping(line)
        sub_parser = self.sub_parsers.get(key, self.sub_parsers["__default__"])
        return sub_parser.parse_key_value(key, value)
def parse_line ( self , line ) : if not line or not line . startswith ( "##" ) : raise exceptions . InvalidHeaderException ( 'Invalid VCF header line (must start with "##") {}' . format ( line ) ) if "=" not in line : raise exceptions . InvalidHeaderException ( 'Invalid VCF header line (must contain "=") {}' . format ( line ) ) line = line [ len ( "##" ) : ] . rstrip ( ) key , value = split_mapping ( line ) sub_parser = self . sub_parsers . get ( key , self . sub_parsers [ "__default__" ] ) return sub_parser . parse_key_value ( key , value )
Parse VCF header ``line`` (trailing '\r\n' or '\n' is ignored)

        :param str line: ``str`` with line to parse
        :param dict sub_parsers: ``dict`` mapping header line types to
            appropriate parser objects
        :returns: appropriate :py:class:`HeaderLine` parsed from ``line``
        :raises: :py:class:`vcfpy.exceptions.InvalidHeaderException` if
            there was a problem parsing the file