forked from enlightenment/enventor
reference: Check dot('.') grammar to identify parent keyword.
Check dot('.') grammer (e.g. image.normal) to identify parent keyword.
This commit is contained in:
parent
50b32ef8f4
commit
763d7b2669
|
@ -200,10 +200,16 @@ keyword_parent_name_list_find(const char *text, const char *keyword_name)
|
|||
const char *parent_begin = NULL;
|
||||
const char *parent_end = NULL;
|
||||
|
||||
//Check if dot('.') grammar is valid to identify parent keyword.
|
||||
Eina_Bool dot_grammar_valid = EINA_TRUE;
|
||||
|
||||
while (text <= ptr)
|
||||
{
|
||||
if (*ptr == '{')
|
||||
if ((*ptr == '{') || (dot_grammar_valid && (*ptr == '.')))
|
||||
{
|
||||
if (dot_grammar_valid)
|
||||
dot_grammar_valid = EINA_FALSE;
|
||||
|
||||
height++;
|
||||
if (height == next_height)
|
||||
{
|
||||
|
@ -244,8 +250,15 @@ keyword_parent_name_list_find(const char *text, const char *keyword_name)
|
|||
}
|
||||
else if (*ptr == '}')
|
||||
{
|
||||
if (dot_grammar_valid)
|
||||
dot_grammar_valid = EINA_FALSE;
|
||||
|
||||
height--;
|
||||
}
|
||||
else if (dot_grammar_valid && !isalnum(*ptr))
|
||||
{
|
||||
dot_grammar_valid = EINA_FALSE;
|
||||
}
|
||||
ptr--;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue