Lines Matching refs:str

24 ZEND_API zend_string *(*zend_new_interned_string)(zend_string *str);
28 static zend_string *zend_new_interned_string_int(zend_string *str);
32 ZEND_API zend_ulong zend_hash_func(const char *str, size_t len) in zend_hash_func() argument
34 return zend_inline_hash_func(str, len); in zend_hash_func()
40 zend_string *str = Z_STR_P(zv); in _str_dtor() local
41 pefree(str, GC_FLAGS(str) & IS_STR_PERSISTENT); in _str_dtor()
48 zend_string *str; in zend_interned_strings_init() local
58 str = zend_string_alloc(sizeof("")-1, 1); in zend_interned_strings_init()
59 ZSTR_VAL(str)[0] = '\000'; in zend_interned_strings_init() local
60 CG(empty_string) = zend_new_interned_string_int(str); in zend_interned_strings_init()
78 static zend_string *zend_new_interned_string_int(zend_string *str) in zend_new_interned_string_int() argument
86 if (ZSTR_IS_INTERNED(str)) { in zend_new_interned_string_int()
87 return str; in zend_new_interned_string_int()
90 h = zend_string_hash_val(str); in zend_new_interned_string_int()
95 if ((p->h == h) && (ZSTR_LEN(p->key) == ZSTR_LEN(str))) { in zend_new_interned_string_int()
96 if (!memcmp(ZSTR_VAL(p->key), ZSTR_VAL(str), ZSTR_LEN(str))) { in zend_new_interned_string_int()
97 zend_string_release(str); in zend_new_interned_string_int()
104 GC_REFCOUNT(str) = 1; in zend_new_interned_string_int()
105 GC_FLAGS(str) |= IS_STR_INTERNED; in zend_new_interned_string_int()
137 p->key = str; in zend_new_interned_string_int()
138 Z_STR(p->val) = str; in zend_new_interned_string_int()
146 return str; in zend_new_interned_string_int()
148 return str; in zend_new_interned_string_int()