condense string flags

This commit is contained in:
Allen Webster
2021-06-30 14:09:32 -04:00
parent 52f840f5ab
commit 3648548cfe
5 changed files with 100 additions and 112 deletions
+6 -7
View File
@@ -207,7 +207,8 @@
#endif
#if MD_COMPILER_CLANG || MD_COMPILER_GCC
#define MD_FORMAT_FUNCTION_ANNOTATION(str_idx, check_idx) __attribute__((format(printf, str_idx, check_idx)))
#define MD_FORMAT_FUNCTION_ANNOTATION(str_idx, check_idx) \
__attribute__((format(printf, str_idx, check_idx)))
#else
#define MD_FORMAT_FUNCTION_ANNOTATION(str_idx, check_idx)
#endif
@@ -352,13 +353,11 @@ enum
MD_NodeFlag_StringSingleQuote = (1<<10),
MD_NodeFlag_StringDoubleQuote = (1<<11),
MD_NodeFlag_StringTick = (1<<12),
MD_NodeFlag_StringTripletSingleQuote= (1<<13),
MD_NodeFlag_StringTripletDoubleQuote= (1<<14),
MD_NodeFlag_StringTripletTick = (1<<15),
MD_NodeFlag_StringTriplet = (1<<13),
MD_NodeFlag_Numeric = (1<<16),
MD_NodeFlag_Identifier = (1<<17),
MD_NodeFlag_StringLiteral = (1<<18),
MD_NodeFlag_Numeric = (1<<14),
MD_NodeFlag_Identifier = (1<<15),
MD_NodeFlag_StringLiteral = (1<<16),
};
typedef struct MD_Node MD_Node;
+9 -20
View File
@@ -679,9 +679,7 @@ MD_StringListFromNodeFlags(MD_NodeFlags flags)
"StringSingleQuote",
"StringDoubleQuote",
"StringTick",
"StringTripletSingleQuote",
"StringTripletDoubleQuote",
"StringTripletTick",
"StringTriplet",
"Numeric",
"Identifier",
@@ -1309,25 +1307,16 @@ MD_TokenFromString(MD_String8 string)
//- rjf: set relevant node flags on token
token.node_flags |= MD_NodeFlag_StringLiteral;
switch(d)
{
case '\'': token.node_flags |= MD_NodeFlag_StringSingleQuote; break;
case '"': token.node_flags |= MD_NodeFlag_StringDoubleQuote; break;
case '`': token.node_flags |= MD_NodeFlag_StringTick; break;
default: break;
}
if(is_triplet)
{
switch(d)
{
case '\'': token.node_flags |= MD_NodeFlag_StringTripletSingleQuote; break;
case '"': token.node_flags |= MD_NodeFlag_StringTripletDoubleQuote; break;
case '`': token.node_flags |= MD_NodeFlag_StringTripletTick; break;
default: break;
}
}
else
{
switch(d)
{
case '\'': token.node_flags |= MD_NodeFlag_StringSingleQuote; break;
case '"': token.node_flags |= MD_NodeFlag_StringDoubleQuote; break;
case '`': token.node_flags |= MD_NodeFlag_StringTick; break;
default: break;
}
token.node_flags |= MD_NodeFlag_StringTriplet;
}
}break;