121 amxc_var_t* alias = amxc_var_get_key(templ_params,
"Alias", AMXC_VAR_FLAG_DEFAULT);
122 amxc_htable_it_t* halias = amxc_htable_get(values,
"Alias");
124 uint32_t new_index = index == 0 ? (templ->
last_index + 1) : index;
125 amxc_var_t* alias_var = NULL;
127 when_null(alias, exit);
128 when_true(!amxc_var_constcast(
bool,
GET_FIELD(alias,
"attributes.key")), exit);
129 when_true(!amxc_var_constcast(
bool,
GET_FIELD(alias,
"attributes.unique")), exit);
132 amxc_var_new(&alias_var);
133 if((*name != NULL) && ((*name)[0] != 0)) {
134 amxc_var_set(cstring_t, alias_var, *name);
136 amxc_string_t alias_name;
137 amxc_string_init(&alias_name, 0);
138 amxc_string_appendf(&alias_name,
"cpe-%s-%d", obj_name, new_index);
139 amxc_var_push(amxc_string_t, alias_var, &alias_name);
140 amxc_string_clean(&alias_name);
142 amxc_htable_insert(values,
"Alias", &alias_var->hit);
144 alias_var = amxc_var_from_htable_it(halias);
145 if((amxc_var_type_of(alias_var) != AMXC_VAR_ID_CSTRING) &&
146 ( amxc_var_type_of(alias_var) != AMXC_VAR_ID_SSV_STRING) &&
147 ( amxc_var_type_of(alias_var) != AMXC_VAR_ID_CSV_STRING)) {
153 *name = amxc_var_constcast(cstring_t, alias_var);
154 if(isdigit((*name)[0]) != 0) {
#define GET_FIELD(var, field)
@ amxd_status_invalid_name
@ amxd_status_invalid_value
#define AMXD_OBJECT_NAMED
Name and path format flag - default behavior, use name for instance objects.
const char * amxd_object_get_name(const amxd_object_t *const object, const uint32_t flags)
Get the name of the object (or index as a string for instance objects)