Added new function

pull/81/head
parent 2cff4bb366
commit dfb7524a46

@ -746,11 +746,26 @@ void *yon_config_get_all_by_key(char *key, int *size){
dictionary *dict = NULL; dictionary *dict = NULL;
for_dictionaries(dict, (dictionary*)__yon__config__strings){ for_dictionaries(dict, (dictionary*)__yon__config__strings){
if (strstr(dict->key,key)&&((yon_config_parameter*)dict)->flag1!=-1) { if (strstr(dict->key,key)&&((yon_config_parameter*)dict)->flag1!=-1) {
char *key_quoted = yon_config_parameter_set_quotes(dict->key); char *ret_string = yon_char_unite(dict->key,"=",(char*)dict->data,NULL);
char *ret_string = yon_char_unite(key_quoted,"=",(char*)dict->data,NULL); if (ret_data) ret_data = yon_char_parsed_append(ret_data,size,ret_string);
else ret_data = yon_char_parsed_new(size,ret_string,NULL);
}
}
return ret_data;
}
return NULL;
}
void *yon_config_get_all_keys_by_key(char *key, int *size){
(*size)=0;
check_config{
config_str ret_data=NULL;
dictionary *dict = NULL;
for_dictionaries(dict, (dictionary*)__yon__config__strings){
if (strstr(dict->key,key)&&((yon_config_parameter*)dict)->flag1!=-1) {
char *ret_string = yon_char_new(dict->key);
if (ret_data) ret_data = yon_char_parsed_append(ret_data,size,ret_string); if (ret_data) ret_data = yon_char_parsed_append(ret_data,size,ret_string);
else ret_data = yon_char_parsed_new(size,ret_string,NULL); else ret_data = yon_char_parsed_new(size,ret_string,NULL);
free(key_quoted);
} }
} }
return ret_data; return ret_data;

@ -1414,6 +1414,12 @@ config_str yon_config_get_parameters_for_section(const char *section_name, int *
/// @return A newly allocated list of all found parameters or NULL /// @return A newly allocated list of all found parameters or NULL
void *yon_config_get_all_by_key(char *key, int *size); void *yon_config_get_all_by_key(char *key, int *size);
/// @brief Find all parameter keys from the configuration by string
/// @param key the search string
/// @param size Size of the returned parameter list
/// @return A newly allocated list of all found parameter keys or NULL
void *yon_config_get_all_keys_by_key(char *key, int *size);
/// @brief Find all parameters from the configuration by string, excluding ignored parameters /// @brief Find all parameters from the configuration by string, excluding ignored parameters
/// @param key the search string /// @param key the search string
/// @param size Size of the returned parameter list /// @param size Size of the returned parameter list

Loading…
Cancel
Save