summaryrefslogtreecommitdiff
path: root/src/fspec/lexer.h
blob: 7b60e6b31e6caeffaf62f27672f1dfa282fd72d8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#pragma once

#include <fspec/memory.h>

struct fspec_lexer;
struct fspec_lexer {
   struct {
      size_t (*read)(struct fspec_lexer *lexer, void *ptr, const size_t size, const size_t nmemb);
   } ops;

   struct {
      struct fspec_mem input, output;
   } mem;
};

bool
fspec_lexer_parse(struct fspec_lexer *lexer, const char *name);