initial import of the C runtime

This commit is contained in:
kr.angelov
2012-01-20 13:41:10 +00:00
parent b972835712
commit 2eee382a62
94 changed files with 14344 additions and 1277 deletions

37
src/runtime/c/gu/choice.h Normal file
View File

@@ -0,0 +1,37 @@
#ifndef GU_CHOICE_H_
#define GU_CHOICE_H_
#include <gu/mem.h>
typedef struct GuChoice GuChoice;
typedef struct GuChoiceMark GuChoiceMark;
GuChoice*
gu_new_choice(GuPool* pool);
int
gu_choice_next(GuChoice* ch, int n_choices);
GuChoiceMark
gu_choice_mark(GuChoice* ch);
void
gu_choice_reset(GuChoice* ch, GuChoiceMark mark);
bool
gu_choice_advance(GuChoice* ch);
// private
struct GuChoiceMark {
size_t path_idx;
};
#endif // GU_CHOICE_H_