Lines Matching full:self
53 ESR_ReturnCode ST_Free(SymbolTable *self)
57 if (self == NULL)
65 ST_reset(self);
68 if (self->hashmap)
69 CHKLOG(rc, HashMapDestroy(self->hashmap));
72 if (self != NULL)
73 FREE(self);
79 ESR_ReturnCode ST_putKeyValue(SymbolTable* self, const LCHAR* key, const LCHAR* value)
85 if (self == NULL || key == NULL || value == NULL)
92 rc = HashMapGet(self->hashmap, key, (void**) & buf);
95 CHKLOG(rc, ST_getSymbolSlot(self, &symbol));
102 CHKLOG(rc, HashMapPut(self->hashmap, symbol->key, symbol->value));
121 ESR_ReturnCode ST_Copy(SymbolTable* self, HashMap* dst)
131 HashMapGetSize(self->hashmap, &size);
134 HashMapGetKeyAtIndex(self->hashmap, i, &pkey);
135 HashMapGet(self->hashmap, pkey, (void **)&pvalue);
149 ESR_ReturnCode ST_getKeyValue(SymbolTable* self, const LCHAR* key, LCHAR** value)
155 if (self == NULL || key == NULL || value == NULL)
161 rc = HashMapGet(self->hashmap, key, (void**)value);
169 for (i = 0;i < self->num_special_symbols; i++)
172 if (!LSTRCMP(key, self->SpecialSymbols[i].key))
174 *value = self->SpecialSymbols[i].value;
184 if (!LSTRCMP(key, self->SpecialSymbols[i].key))
186 *value = self->SpecialSymbols[i].value;
264 ESR_ReturnCode ST_putSpecialKeyValue(SymbolTable* self, const LCHAR* key, const LCHAR* value)
268 if (self == NULL || key == NULL || value == NULL)
275 for (i = 0;i < self->num_special_symbols;i++)
277 if (!LSTRCMP(self->SpecialSymbols[i].key, key))
279 LSTRCPY(self->SpecialSymbols[i].value, value);
284 if (self->num_special_symbols < MAX_SPECIAL_SYMBOLS)
286 LSTRCPY(self->SpecialSymbols[self->num_special_symbols].key, key);
287 LSTRCPY(self->SpecialSymbols[self->num_special_symbols].value, value);
288 ++self->num_special_symbols;