#include "../test.h" #include "arc/std/parser.h" #define LAMBDA 0 #define CHAR 1 #define NUM 2 #define CHAR_OR_NUM 3 #define VARIABLE_NAME 4 #define VARIABLE 5 ARC_TEST(Lexer_Char_Match){ ARC_Parser *parser; uint32_t *charOrNumTokens[] = { (uint32_t[]){ 1, CHAR }, (uint32_t[]){ 1, NUM } }; uint32_t *variableNameTags[] = { (uint32_t[]){ 2, CHAR_OR_NUM, VARIABLE_NAME }, (uint32_t[]){ 1, LAMBDA } }; uint32_t *variableTokensOrTags[] = { (uint32_t[]){ 2, CHAR, VARIABLE_NAME } }; ARC_ParserLanguageTag testTags[3] = { { CHAR_OR_NUM, //tagId charOrNumTokens, //tokensOrTags 2 //tokenOrTagsSize }, { VARIABLE_NAME, //tagId variableNameTags, //tokensOrTags 2 //tokenOrTagsSize }, { VARIABLE, //tagId variableTokensOrTags, //tokensOrTags 1 //tokenOrTagsSize } }; ARC_Array languageArray = { 3, //size testTags //data }; ARC_Parser_Create(&parser, &languageArray); ARC_Parser_Destroy(parser); ARC_CHECK(1 == 1); }