<commit_before>#ifndef SCYTHE_H
#define SCYTHE_H

#include <zlib.h>
#include "kseq.h"

/* KSEQ_INIT() cannot be called here, because we only need the types
   defined. Calling KSEQ_INIT() would also define functions, leading
   to an unused function warning with GCC. So, the basic typedefs
   kseq.h has are included here, and each file that reads needs:
   
   This was a fix also used in <NAME>'s Sickle (which I also helped
   with) and is the only way I know of dealing with this.

   __KS_GETC(gzread, BUFFER_SIZE)
   __KS_GETUNTIL(gzread, BUFFER_SIZE)
   __KSEQ_READ
*/

#define BUFFER_SIZE 4096
__KS_TYPE(gzFile)
__KS_BASIC(gzFile, BUFFER_SIZE)
__KSEQ_TYPE(gzFile)
__KSEQ_BASIC(gzFile)

#define MAX_ADAPTERS 20
#define MATCH_SCORE 1
#define MISMATCH_SCORE -1

#define IS_FASTQ(quality_type) INTEGER(quality_type)[0] >= 0

typedef enum {
  PHRED, 
  SANGER,
  SOLEXA,
  ILLUMINA
} quality_type;

#define Q_OFFSET 0
#define Q_MIN 1
#define Q_MAX 2
<commit_msg>increased max adapters to 1000<commit_after>#ifndef SCYTHE_H
#define SCYTHE_H

#include <zlib.h>
#include "kseq.h"

/* KSEQ_INIT() cannot be called here, because we only need the types
   defined. Calling KSEQ_INIT() would also define functions, leading
   to an unused function warning with GCC. So, the basic typedefs
   kseq.h has are included here, and each file that reads needs:
   
   This was a fix also used in <NAME>'s Sickle (which I also helped
   with) and is the only way I know of dealing with this.

   __KS_GETC(gzread, BUFFER_SIZE)
   __KS_GETUNTIL(gzread, BUFFER_SIZE)
   __KSEQ_READ
*/

#define BUFFER_SIZE 4096
__KS_TYPE(gzFile)
__KS_BASIC(gzFile, BUFFER_SIZE)
__KSEQ_TYPE(gzFile)
__KSEQ_BASIC(gzFile)

#define MAX_ADAPTERS 1000
#define MATCH_SCORE 1
#define MISMATCH_SCORE -1

#define IS_FASTQ(quality_type) INTEGER(quality_type)[0] >= 0

typedef enum {
  PHRED, 
  SANGER,
  SOLEXA,
  ILLUMINA
} quality_type;

#define Q_OFFSET 0
#define Q_MIN 1
#define Q_MAX 2

{'fraction_non_alphanumeric': 0.07483341875961046, 'fraction_numerical': 0.016401845207585853, 'mean_word_length': 4.498591549295774, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3568871', 'n_tokens_mistral': 787, 'n_tokens_neox': 724, 'n_words': 238}