这篇教程C++ BG函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中BG函数的典型用法代码示例。如果您正苦于以下问题:C++ BG函数的具体用法?C++ BG怎么用?C++ BG使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了BG函数的25个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: object_common2static inline int object_common2(UNSERIALIZE_PARAMETER, zend_long elements){ zval retval; zval fname; if (Z_TYPE_P(rval) != IS_OBJECT) { return 0; } //??? TODO: resize before if (!process_nested_data(UNSERIALIZE_PASSTHRU, Z_OBJPROP_P(rval), elements, 1)) { return 0; } ZVAL_DEREF(rval); if (Z_OBJCE_P(rval) != PHP_IC_ENTRY && zend_hash_str_exists(&Z_OBJCE_P(rval)->function_table, "__wakeup", sizeof("__wakeup")-1)) { ZVAL_STRINGL(&fname, "__wakeup", sizeof("__wakeup") - 1); BG(serialize_lock)++; call_user_function_ex(CG(function_table), rval, &fname, &retval, 0, 0, 1, NULL); BG(serialize_lock)--; zval_dtor(&fname); zval_dtor(&retval); } if (EG(exception)) { return 0; } return finish_nested_data(UNSERIALIZE_PASSTHRU);}
开发者ID:pjump,项目名称:re2c,代码行数:32,
示例2: object_common2static inline int object_common2(UNSERIALIZE_PARAMETER, zend_long elements){ zval retval; zval fname; HashTable *ht; if (Z_TYPE_P(rval) != IS_OBJECT) { return 0; } ht = Z_OBJPROP_P(rval); zend_hash_extend(ht, zend_hash_num_elements(ht) + elements, (ht->u.flags & HASH_FLAG_PACKED)); if (!process_nested_data(UNSERIALIZE_PASSTHRU, ht, elements, 1)) { return 0; } ZVAL_DEREF(rval); if (Z_OBJCE_P(rval) != PHP_IC_ENTRY && zend_hash_str_exists(&Z_OBJCE_P(rval)->function_table, "__wakeup", sizeof("__wakeup")-1)) { ZVAL_STRINGL(&fname, "__wakeup", sizeof("__wakeup") - 1); BG(serialize_lock)++; call_user_function_ex(CG(function_table), rval, &fname, &retval, 0, 0, 1, NULL); BG(serialize_lock)--; zval_dtor(&fname); zval_dtor(&retval); } if (EG(exception)) { return 0; } return finish_nested_data(UNSERIALIZE_PASSTHRU);}
开发者ID:Freeaqingme,项目名称:php-src,代码行数:34,
示例3: object_common2static inline int object_common2(UNSERIALIZE_PARAMETER, long elements){ zval *retval_ptr = NULL; zval fname; if (Z_TYPE_PP(rval) != IS_OBJECT) { return 0; } if (!process_nested_data(UNSERIALIZE_PASSTHRU, Z_OBJPROP_PP(rval), elements, 1)) { return 0; } if (Z_OBJCE_PP(rval) != PHP_IC_ENTRY && zend_hash_exists(&Z_OBJCE_PP(rval)->function_table, "__wakeup", sizeof("__wakeup"))) { INIT_PZVAL(&fname); ZVAL_STRINGL(&fname, "__wakeup", sizeof("__wakeup") - 1, 0); BG(serialize_lock)++; call_user_function_ex(CG(function_table), rval, &fname, &retval_ptr, 0, 0, 1, NULL TSRMLS_CC); BG(serialize_lock)--; } if (retval_ptr) { zval_ptr_dtor(&retval_ptr); } if (EG(exception)) { return 0; } return finish_nested_data(UNSERIALIZE_PASSTHRU);}
开发者ID:kmiku7,项目名称:php-5.6.10-annotated,代码行数:33,
示例4: var_destroyPHPAPI void var_destroy(php_unserialize_data_t *var_hashx){ void *next; zend_long i; var_entries *var_hash = (*var_hashx)->first; var_dtor_entries *var_dtor_hash = (*var_hashx)->first_dtor; zend_bool wakeup_failed = 0; zval wakeup_name; ZVAL_UNDEF(&wakeup_name);#if VAR_ENTRIES_DBG fprintf(stderr, "var_destroy(%ld)/n", var_hash?var_hash->used_slots:-1L);#endif while (var_hash) { next = var_hash->next; efree_size(var_hash, sizeof(var_entries)); var_hash = next; } while (var_dtor_hash) { for (i = 0; i < var_dtor_hash->used_slots; i++) { zval *zv = &var_dtor_hash->data[i];#if VAR_ENTRIES_DBG fprintf(stderr, "var_destroy dtor(%p, %ld)/n", var_dtor_hash->data[i], Z_REFCOUNT_P(var_dtor_hash->data[i]));#endif /* Perform delayed __wakeup calls */ if (Z_EXTRA_P(zv) == VAR_WAKEUP_FLAG) { if (!wakeup_failed) { zval retval; if (Z_ISUNDEF(wakeup_name)) { ZVAL_STRINGL(&wakeup_name, "__wakeup", sizeof("__wakeup") - 1); } BG(serialize_lock)++; if (call_user_function_ex(CG(function_table), zv, &wakeup_name, &retval, 0, 0, 1, NULL) == FAILURE || Z_ISUNDEF(retval)) { wakeup_failed = 1; GC_FLAGS(Z_OBJ_P(zv)) |= IS_OBJ_DESTRUCTOR_CALLED; } BG(serialize_lock)--; zval_ptr_dtor(&retval); } else { GC_FLAGS(Z_OBJ_P(zv)) |= IS_OBJ_DESTRUCTOR_CALLED; } } i_zval_ptr_dtor(zv ZEND_FILE_LINE_CC); } next = var_dtor_hash->next; efree_size(var_dtor_hash, sizeof(var_dtor_entries)); var_dtor_hash = next; } zval_ptr_dtor_nogc(&wakeup_name);}
开发者ID:flaupretre,项目名称:php-src,代码行数:57,
示例5: php_var_unserialize_destroyPHPAPI void php_var_unserialize_destroy(php_unserialize_data_t d) { /* fprintf(stderr, "UNSERIALIZE_DESTROY == lock: %u, level: %u/n", BG(serialize_lock), BG(unserialize).level); */ if (BG(serialize_lock) || BG(unserialize).level == 1) { var_destroy(&d); efree(d); } if (!BG(serialize_lock) && !--BG(unserialize).level) { BG(unserialize).data = NULL; }}
开发者ID:flaupretre,项目名称:php-src,代码行数:10,
示例6: ft_parset_bool ft_parse(t_buff *buff, const char *parse){ if (ft_strchr(parse, BG(buff)) == NULL) return (false); buff->i++; while (!BEOF(buff)) { if (ft_strchr(parse, BG(buff)) == NULL) break ; buff->i++; } return (true);}
开发者ID:Julow,项目名称:Arkanoid,代码行数:13,
示例7: php_url_scanner_ex_activatestatic int php_url_scanner_ex_activate(int type){ url_adapt_state_ex_t *ctx; if (type) { ctx = &BG(url_adapt_session_ex); } else { ctx = &BG(url_adapt_output_ex); } memset(ctx, 0, ((size_t) &((url_adapt_state_ex_t *)0)->tags)); return SUCCESS;}
开发者ID:LTD-Beget,项目名称:php-src,代码行数:14,
示例8: php_ini_on_update_tagsstatic int php_ini_on_update_tags(zend_ini_entry *entry, zend_string *new_value, void *mh_arg1, void *mh_arg2, void *mh_arg3, int stage, int type){ url_adapt_state_ex_t *ctx; char *key; char *tmp; char *lasts = NULL; if (type) { ctx = &BG(url_adapt_session_ex); } else { ctx = &BG(url_adapt_output_ex); } tmp = estrndup(ZSTR_VAL(new_value), ZSTR_LEN(new_value)); if (ctx->tags) zend_hash_destroy(ctx->tags); else { ctx->tags = malloc(sizeof(HashTable)); if (!ctx->tags) { efree(tmp); return FAILURE; } } zend_hash_init(ctx->tags, 0, NULL, tag_dtor, 1); for (key = php_strtok_r(tmp, ",", &lasts); key; key = php_strtok_r(NULL, ",", &lasts)) { char *val; val = strchr(key, '='); if (val) { char *q; size_t keylen; *val++ = '/0'; for (q = key; *q; q++) { *q = tolower(*q); } keylen = q - key; zend_hash_str_add_mem(ctx->tags, key, keylen, val, strlen(val)+1); } } efree(tmp); return SUCCESS;}
开发者ID:LTD-Beget,项目名称:php-src,代码行数:50,
示例9: php_url_scanner_reset_vars_implstatic inline void php_url_scanner_reset_vars_impl(int type) { url_adapt_state_ex_t *url_state; if (type) { url_state = &BG(url_adapt_session_ex); } else { url_state = &BG(url_adapt_output_ex); } if (url_state->form_app.s) { ZSTR_LEN(url_state->form_app.s) = 0; } if (url_state->url_app.s) { ZSTR_LEN(url_state->url_app.s) = 0; }}
开发者ID:LTD-Beget,项目名称:php-src,代码行数:16,
示例10: ft_parsespacet_bool ft_parsespace(t_buff *buff){ if (!BIF(buff, &ft_isspace)) return (false); while (ft_isspace(BG(buff))) buff->i++; return (true);}
开发者ID:Julow,项目名称:Arkanoid,代码行数:8,
|