diff options
author | Dmitry Stogov <dmitry@zend.com> | 2014-08-11 18:37:26 +0400 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2014-08-11 18:37:26 +0400 |
commit | 8013a27ad9ae71d6eac451c183c8e2cee333f751 (patch) | |
tree | 48fa66b2d0032f0f59b45d2ad1bfd19d7673035f /Zend/zend_ts_hash.h | |
parent | 4c716e8b516146f0a10b0b89078ccd096a8b4b7b (diff) | |
download | php-git-8013a27ad9ae71d6eac451c183c8e2cee333f751.tar.gz |
Implemented ext/com_dotnet support for phpng
Diffstat (limited to 'Zend/zend_ts_hash.h')
-rw-r--r-- | Zend/zend_ts_hash.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Zend/zend_ts_hash.h b/Zend/zend_ts_hash.h index 4b0a507368..fcf8c3cda1 100644 --- a/Zend/zend_ts_hash.h +++ b/Zend/zend_ts_hash.h @@ -102,6 +102,41 @@ void zend_ts_hash_display_pListTail(TsHashTable *ht); void zend_ts_hash_display(TsHashTable *ht); #endif +ZEND_API zval *zend_ts_hash_str_find(TsHashTable *ht, const char *key, int len); +ZEND_API zval *_zend_ts_hash_str_update(TsHashTable *ht, const char *key, int len, zval *pData ZEND_FILE_LINE_DC); +ZEND_API zval *_zend_ts_hash_str_add(TsHashTable *ht, const char *key, int len, zval *pData ZEND_FILE_LINE_DC); + +#define zend_ts_hash_str_update(ht, key, len, pData) \ + _zend_ts_hash_str_update(ht, key, len, pData ZEND_FILE_LINE_CC) +#define zend_ts_hash_str_add(ht, key, len, pData) \ + _zend_ts_hash_str_add(ht, key, len, pData ZEND_FILE_LINE_CC) + +static inline void *zend_ts_hash_str_find_ptr(TsHashTable *ht, const char *str, int len) +{ + zval *zv; + + zv = zend_ts_hash_str_find(ht, str, len); + return zv ? Z_PTR_P(zv) : NULL; +} + +static inline void *zend_ts_hash_str_update_ptr(TsHashTable *ht, const char *str, int len, void *pData) +{ + zval tmp, *zv; + + ZVAL_PTR(&tmp, pData); + zv = zend_ts_hash_str_update(ht, str, len, &tmp); + return zv ? Z_PTR_P(zv) : NULL; +} + +static inline void *zend_ts_hash_str_add_ptr(TsHashTable *ht, const char *str, int len, void *pData) +{ + zval tmp, *zv; + + ZVAL_PTR(&tmp, pData); + zv = zend_ts_hash_str_add(ht, str, len, &tmp); + return zv ? Z_PTR_P(zv) : NULL; +} + END_EXTERN_C() #define ZEND_TS_INIT_SYMTABLE(ht) \ |