Przeglądaj źródła

ncd: NCDConfigTokenizer: add include token

ambrop7 13 lat temu
rodzic
commit
86486afb5f

+ 3 - 0
examples/ncd_tokenizer_test.c

@@ -111,6 +111,9 @@ static int tokenizer_output (void *user, int token, char *value, size_t value_le
         case NCD_TOKEN_AS:
         case NCD_TOKEN_AS:
             printf("as\n");
             printf("as\n");
             break;
             break;
+        case NCD_TOKEN_INCLUDE:
+            printf("include\n");
+            break;
         default:
         default:
             ASSERT(0);
             ASSERT(0);
     }
     }

+ 3 - 0
ncd/NCDConfigTokenizer.c

@@ -135,6 +135,9 @@ void NCDConfigTokenizer_Tokenize (char *str, size_t left, NCDConfigTokenizer_out
         else if (l = data_begins_with(str, left, "As")) {
         else if (l = data_begins_with(str, left, "As")) {
             token = NCD_TOKEN_AS;
             token = NCD_TOKEN_AS;
         }
         }
+        else if (l = data_begins_with(str, left, "include")) {
+            token = NCD_TOKEN_INCLUDE;
+        }
         else if (is_name_first_char(*str)) {
         else if (is_name_first_char(*str)) {
             l = 1;
             l = 1;
             while (l < left && is_name_char(str[l])) {
             while (l < left && is_name_char(str[l])) {

+ 1 - 0
ncd/NCDConfigTokenizer.h

@@ -54,6 +54,7 @@
 #define NCD_TOKEN_ELSE 18
 #define NCD_TOKEN_ELSE 18
 #define NCD_TOKEN_FOREACH 19
 #define NCD_TOKEN_FOREACH 19
 #define NCD_TOKEN_AS 20
 #define NCD_TOKEN_AS 20
+#define NCD_TOKEN_INCLUDE 21
 
 
 typedef int (*NCDConfigTokenizer_output) (void *user, int token, char *value, size_t value_len, size_t line, size_t line_char);
 typedef int (*NCDConfigTokenizer_output) (void *user, int token, char *value, size_t value_len, size_t line, size_t line_char);