]> git.stg.codes - stg.git/blobdiff - libs/smux/xer_support.c
Another `stgTime` case.
[stg.git] / libs / smux / xer_support.c
index 9e34e6923467a436e20690633c4091b6db4683cd..36b4bfbfc07e53f10cef2941c01b9378250bab93 100644 (file)
@@ -22,16 +22,7 @@ typedef enum {
        ST_COMMENT_CLO_RT       /* "-->"[1] */
 } pstate_e;
 
-static pxml_chunk_type_e final_chunk_type[] = {
-       PXML_TEXT,
-       PXML_TAG_END,
-       PXML_COMMENT_END,
-       PXML_TAG_END,
-       PXML_COMMENT_END,
-};
-
-
-static int
+static const int
 _charclass[256] = {
        0,0,0,0,0,0,0,0, 0,1,1,0,1,1,0,0,
        0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
@@ -79,8 +70,11 @@ _charclass[256] = {
 #define TOKEN_CB(_type, _ns, _current_too)                     \
        TOKEN_CB_CALL(_type, _ns, _current_too, 0)
 
+#define PXML_TAG_FINAL_CHUNK_TYPE      PXML_TAG_END
+#define PXML_COMMENT_FINAL_CHUNK_TYPE  PXML_COMMENT_END
+
 #define TOKEN_CB_FINAL(_type, _ns, _current_too)               \
-       TOKEN_CB_CALL(final_chunk_type[_type], _ns, _current_too, 1)
+       TOKEN_CB_CALL( _type ## _FINAL_CHUNK_TYPE , _ns, _current_too, 1)
 
 /*
  * Parser itself