12#include "../classes/GtfDict.h"
27#define DEFAULT_ATTR_SIZE \
44 hashmap_t *restrict attr_keys,
45 hashmap_t *restrict attr_vals);
67 size_t *restrict outLen);
92#define CORE_FIELD_COUNT 8
106#define GFF3_FASTA_HEADER "##FASTA"
GtfDict * createGTFdict(const occurrence_t *restrict token, PyObject *attr_tp, hashmap_t *restrict attr_keys, hashmap_t *restrict attr_vals)
Parses a singular GTF line into a Python dict.
const char * keywords[CORE_FIELD_COUNT]
Array containing the keywords of the GTF fields.
Definition gtf.c:473
bool validGTFLineToParse(const char *line, size_t len)
Determines if the provided line is a valid GTF line that can be parsed safely.
Definition gtf.c:22
#define CORE_FIELD_COUNT
The number of core fields in a GTF line.
Definition gtf.h:92
const uint8_t keyword_sizes[CORE_FIELD_COUNT]
Array containing the sizes of the keywords.
Definition gtf.c:476
gtfFields
Enum containing the fields that a GTF line can contain.
Definition gtf.h:75
@ SOURCE
Definition gtf.h:77
@ SEQNAME
Definition gtf.h:76
@ START
Definition gtf.h:79
@ FRAME
Definition gtf.h:83
@ ATTRIBUTES
Definition gtf.h:84
@ REVERSE
Definition gtf.h:82
@ FEATURE
Definition gtf.h:78
@ SCORE
Definition gtf.h:81
char * gtf_percent_encode(const char *restrict str, size_t len, size_t *restrict outLen)
Percent encodes restricted GTF characters.
Definition gtf.c:451
A dict that holds GTF data.
Definition GtfDict.h:30
An occurrence of a token in a string.
Definition common.h:30