Просмотр исходного кода

ncd: NCDConfigTokenizer: add include_guard token

ambrop7 13 лет назад
Родитель
Сommit
10d51b7a0a
3 измененных файлов с 7 добавлено и 0 удалено
  1. 3 0
      examples/ncd_tokenizer_test.c
  2. 3 0
      ncd/NCDConfigTokenizer.c
  3. 1 0
      ncd/NCDConfigTokenizer.h

+ 3 - 0
examples/ncd_tokenizer_test.c

@@ -114,6 +114,9 @@ static int tokenizer_output (void *user, int token, char *value, size_t value_le
         case NCD_TOKEN_INCLUDE:
             printf("include\n");
             break;
+        case NCD_TOKEN_INCLUDE_GUARD:
+            printf("include_guard\n");
+            break;
         default:
             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")) {
             token = NCD_TOKEN_AS;
         }
+        else if (l = data_begins_with(str, left, "include_guard")) {
+            token = NCD_TOKEN_INCLUDE_GUARD;
+        }
         else if (l = data_begins_with(str, left, "include")) {
             token = NCD_TOKEN_INCLUDE;
         }

+ 1 - 0
ncd/NCDConfigTokenizer.h

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