partial parserlang stup

This commit is contained in:
herbglitch 2024-11-04 19:58:09 -07:00
parent 006b4c63f7
commit 022ab6cfef
2 changed files with 15 additions and 0 deletions

View file

@ -194,6 +194,19 @@ uint32_t ARC_Lexer_AutomataMatchCharInStringFn(ARC_String **tokenData, ARC_Strin
*/
ARC_LexerTokenRule ARC_LexerTokenRule_CreateAndReturnMatchCharRule(uint32_t id, char character);
/**
* @brief creates a ARC_LexerTokenRule with a given id and character range
*
* @note this is intended as a helper funtion
*
* @param[in] id a tokens id (basically the token value)
* @param[in] start the minimum character value to match against
* @param[in] end the maxamum character value to match against
*
* @return a token rule based in the id and character
*/
ARC_LexerTokenRule ARC_LexerTokenRule_CreateAndReturnMatchCharOrBetween(uint32_t id, char start, char end);
/**
* @brief creates a ARC_LexerTokenRule with a given id and string
*

View file

@ -76,6 +76,8 @@ void ARC_Lexer_RegisterTokenRule(ARC_Lexer *lexer, ARC_LexerTokenRule tokenRule)
ARC_LexerTokenRule *storedTokenRule = (ARC_LexerTokenRule *)malloc(sizeof(ARC_LexerTokenRule));
*storedTokenRule = tokenRule;
//TODO: add warning here for if arc_errno is already set
//add to the vector and check for error (I'd be surprised if the error ever happened because that would most likely mean overflow)
ARC_Vector_Add(lexer->tokenRules, storedTokenRule);
if(arc_errno){