def parse(self, limit=None):
        """
        :param limit:
        :return:

        """
        if limit is not None:
            LOG.info("Only parsing first %s rows fo each file", str(limit))

        LOG.info("Parsing files...")

        if self.test_only:
            self.test_mode = True

        self._process_diseases(limit)
        self._process_genes(limit)
        self._process_genes_kegg2ncbi(limit)
        self._process_omim2gene(limit)
        self._process_omim2disease(limit)
        self._process_kegg_disease2gene(limit)

        self._process_pathways(limit)
        self._process_pathway_pubmed(limit)
        # self._process_pathway_pathway(limit)
        self._process_pathway_disease(limit)
        self._process_pathway_ko(limit)

        self._process_ortholog_classes(limit)
        # TODO add in when refactoring for #141
        # for f in ['hsa_orthologs', 'mmu_orthologs', 'rno_orthologs',
        #           'dme_orthologs','dre_orthologs','cel_orthologs']:
        #     file = '/'.join((self.rawdir, self.files[f]['file']))
        #     self._process_orthologs(file, limit)  # DONE #

        LOG.info("Finished parsing")

        return
:param limit:
        :return: