function_parse transitional works
This commit is contained in:
parent
ad6379c6a7
commit
163b99e967
|
@ -782,6 +782,12 @@ get_index(Parse_Context *context, Cpp_Token *token){
|
||||||
return(&TRANSITIONAL_INDEX);
|
return(&TRANSITIONAL_INDEX);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Cpp_Token**
|
||||||
|
get_ptr(Parse_Context *context){
|
||||||
|
Cpp_Token **result = &context->token;
|
||||||
|
return(result);
|
||||||
|
}
|
||||||
|
|
||||||
static int32_t
|
static int32_t
|
||||||
get_count(Parse_Context *context){
|
get_count(Parse_Context *context){
|
||||||
int32_t result = (int32_t)(context->token_e - context->token_s);
|
int32_t result = (int32_t)(context->token_e - context->token_s);
|
||||||
|
@ -1382,27 +1388,28 @@ function_parse(Parse_Context *context, char *data,
|
||||||
Item_Set item_set, int32_t sig_count, String cpp_name){
|
Item_Set item_set, int32_t sig_count, String cpp_name){
|
||||||
int32_t result = false;
|
int32_t result = false;
|
||||||
|
|
||||||
Cpp_Token *token = 0, *jtoken = 0;
|
Cpp_Token *jtoken = 0;
|
||||||
|
|
||||||
token = get_token(context);
|
jtoken = get_token(context);
|
||||||
item_set.items[sig_count].marker = get_lexeme(*token, data);
|
item_set.items[sig_count].marker = get_lexeme(*jtoken, data);
|
||||||
jtoken = token;
|
|
||||||
|
|
||||||
if (function_parse_check(get_index(context, jtoken), &jtoken, get_count(context))){
|
if (function_parse_check(get_index(context, 0), get_ptr(context), get_count(context))){
|
||||||
if (token->type == CPP_TOKEN_IDENTIFIER){
|
if (jtoken->type == CPP_TOKEN_IDENTIFIER){
|
||||||
String doc_string = {0};
|
String doc_string = {0};
|
||||||
if (function_get_doc(get_index(context, jtoken), &jtoken,
|
if (function_get_doc(get_index(context, 0), get_ptr(context),
|
||||||
get_count(context), data, &doc_string)){
|
get_count(context), data, &doc_string)){
|
||||||
item_set.items[sig_count].doc_string = doc_string;
|
item_set.items[sig_count].doc_string = doc_string;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
set_token(context, jtoken);
|
||||||
if (get_next_token(context)){
|
if (get_next_token(context)){
|
||||||
Cpp_Token *ret_start_token = token;
|
Cpp_Token *ret_start_token = get_token(context);
|
||||||
if (function_parse_check(get_index(context, token), &token, get_count(context))){
|
|
||||||
if (function_sig_parse(get_index(context, token), &token, get_count(context), ret_start_token,
|
if (function_parse_check(get_index(context, 0), get_ptr(context), get_count(context))){
|
||||||
data, item_set, sig_count, cpp_name)){
|
if (function_sig_parse(get_index(context, 0), get_ptr(context), get_count(context),
|
||||||
|
ret_start_token, data, item_set, sig_count, cpp_name)){
|
||||||
result = true;
|
result = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue