コード例 #1
0
ファイル: isscalar.zep.c プロジェクト: KorsaR-ZN/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testBoolVar) {

	zend_bool a = 1;


	RETURN_BOOL(zephir_is_scalar((a ? ZEPHIR_GLOBAL(global_true) : ZEPHIR_GLOBAL(global_false))));

}
コード例 #2
0
ファイル: debug.zep.c プロジェクト: bschantz/cphalcon
/**
 * Produces an string representation of a variable
 */
PHP_METHOD(Phalcon_Debug, _getVarDump) {

	zephir_fcall_cache_entry *_1 = NULL;
	int ZEPHIR_LAST_CALL_STATUS;
	zval *variable, *className = NULL, *dumpedObject = NULL, *_0$$9 = NULL, *_2$$11 = NULL;

	ZEPHIR_MM_GROW();
	zephir_fetch_params(1, 1, 0, &variable);



	if (zephir_is_scalar(variable)) {
		if (Z_TYPE_P(variable) == IS_BOOL) {
			if (zephir_is_true(variable)) {
				RETURN_MM_STRING("true", 1);
			} else {
				RETURN_MM_STRING("false", 1);
			}
		}
		if (Z_TYPE_P(variable) == IS_STRING) {
			ZEPHIR_RETURN_CALL_METHOD(this_ptr, "_escapestring", NULL, 0, variable);
			zephir_check_call_status();
			RETURN_MM();
		}
		RETVAL_ZVAL(variable, 1, 0);
		RETURN_MM();
	}
	if (Z_TYPE_P(variable) == IS_OBJECT) {
		ZEPHIR_INIT_VAR(className);
		zephir_get_class(className, variable, 0 TSRMLS_CC);
		if ((zephir_method_exists_ex(variable, SS("dump") TSRMLS_CC) == SUCCESS)) {
			ZEPHIR_CALL_METHOD(&dumpedObject, variable, "dump", NULL, 0);
			zephir_check_call_status();
			ZEPHIR_CALL_METHOD(&_0$$9, this_ptr, "_getarraydump", &_1, 0, dumpedObject);
			zephir_check_call_status();
			ZEPHIR_CONCAT_SVSVS(return_value, "Object(", className, ": ", _0$$9, ")");
			RETURN_MM();
		} else {
			ZEPHIR_CONCAT_SVS(return_value, "Object(", className, ")");
			RETURN_MM();
		}
	}
	if (Z_TYPE_P(variable) == IS_ARRAY) {
		ZEPHIR_CALL_METHOD(&_2$$11, this_ptr, "_getarraydump", &_1, 159, variable);
		zephir_check_call_status();
		ZEPHIR_CONCAT_SVS(return_value, "Array(", _2$$11, ")");
		RETURN_MM();
	}
	if (Z_TYPE_P(variable) == IS_NULL) {
		RETURN_MM_STRING("null", 1);
	}
	zephir_gettype(return_value, variable TSRMLS_CC);
	RETURN_MM();

}
コード例 #3
0
ファイル: isscalar.zep.c プロジェクト: KorsaR-ZN/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testDoubleVar) {

	zval _0;
	double a = 1;


	ZEPHIR_SINIT_VAR(_0);
	ZVAL_DOUBLE(&_0, a);
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #4
0
ファイル: isscalar.zep.c プロジェクト: KorsaR-ZN/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testVarParameter) {

	zval *a;

	zephir_fetch_params(0, 1, 0, &a);



	RETURN_BOOL(zephir_is_scalar(a));

}
コード例 #5
0
ファイル: isscalar.zep.c プロジェクト: KorsaR-ZN/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testVar) {

	zval _0;
	int a = 1;


	ZEPHIR_SINIT_VAR(_0);
	ZVAL_LONG(&_0, a);
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #6
0
ファイル: isscalar.zep.c プロジェクト: KorsaR-ZN/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testEmptyArrayVar) {

	zval *a;

	ZEPHIR_MM_GROW();
	ZEPHIR_INIT_VAR(a);
	array_init(a);

	RETURN_MM_BOOL(zephir_is_scalar(a));

}
コード例 #7
0
ファイル: isscalar.zep.c プロジェクト: KorsaR-ZN/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testStringVar) {

	zval *a;

	ZEPHIR_MM_GROW();
	ZEPHIR_INIT_VAR(a);
	ZVAL_STRING(a, "test string", 1);

	RETURN_MM_BOOL(zephir_is_scalar(a));

}
コード例 #8
0
ファイル: isscalar.zep.c プロジェクト: 8V017UW2RQ70/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testBoolVar) {

	zval _0;
	zend_bool a;
	ZEPHIR_INIT_THIS();

	ZVAL_UNDEF(&_0);


	a = 1;
	ZVAL_BOOL(&_0, (a ? 1 : 0));
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #9
0
ファイル: isscalar.zep.c プロジェクト: 8V017UW2RQ70/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testIntVar) {

	zval _0;
	int a;
	ZEPHIR_INIT_THIS();

	ZVAL_UNDEF(&_0);


	a = 1;
	ZVAL_LONG(&_0, a);
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #10
0
ファイル: isscalar.zep.c プロジェクト: 8V017UW2RQ70/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testVarParameter) {

	zval *a, a_sub;
	ZEPHIR_INIT_THIS();

	ZVAL_UNDEF(&a_sub);

	zephir_fetch_params(0, 1, 0, &a);



	RETURN_BOOL(zephir_is_scalar(a));

}
コード例 #11
0
ファイル: isscalar.zep.c プロジェクト: 8V017UW2RQ70/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testStringVar) {

	zval a;
	ZEPHIR_INIT_THIS();

	ZVAL_UNDEF(&a);

	ZEPHIR_MM_GROW();

	ZEPHIR_INIT_VAR(&a);
	ZVAL_STRING(&a, "test string");
	RETURN_MM_BOOL(zephir_is_scalar(&a));

}
コード例 #12
0
ファイル: isscalar.zep.c プロジェクト: 8V017UW2RQ70/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testDoubleVar) {

	zval _0;
	double a;
	ZEPHIR_INIT_THIS();

	ZVAL_UNDEF(&_0);


	a = (double) (1);
	ZVAL_DOUBLE(&_0, a);
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #13
0
ファイル: isscalar.zep.c プロジェクト: Mrhjx2/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testStringVar) {

	zval a;
		zval this_zv;
	zval *this_ptr = getThis();
	if (EXPECTED(this_ptr)) {
		ZVAL_OBJ(&this_zv, Z_OBJ_P(this_ptr));
		this_ptr = &this_zv;
	} else this_ptr = NULL;
	
	ZVAL_UNDEF(&a);

	ZEPHIR_MM_GROW();

	ZEPHIR_INIT_VAR(&a);
	ZVAL_STRING(&a, "test string");
	RETURN_MM_BOOL(zephir_is_scalar(&a));

}
コード例 #14
0
ファイル: isscalar.zep.c プロジェクト: Mrhjx2/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testBoolVar) {

	zval _0;
	zend_bool a;
		zval this_zv;
	zval *this_ptr = getThis();
	if (EXPECTED(this_ptr)) {
		ZVAL_OBJ(&this_zv, Z_OBJ_P(this_ptr));
		this_ptr = &this_zv;
	} else this_ptr = NULL;
	
	ZVAL_UNDEF(&_0);


	a = 1;
	ZVAL_BOOL(&_0, (a ? 1 : 0));
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #15
0
ファイル: isscalar.zep.c プロジェクト: Mrhjx2/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testDoubleVar) {

	zval _0;
	double a;
		zval this_zv;
	zval *this_ptr = getThis();
	if (EXPECTED(this_ptr)) {
		ZVAL_OBJ(&this_zv, Z_OBJ_P(this_ptr));
		this_ptr = &this_zv;
	} else this_ptr = NULL;
	
	ZVAL_UNDEF(&_0);


	a = (double) (1);
	ZVAL_DOUBLE(&_0, a);
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #16
0
ファイル: isscalar.zep.c プロジェクト: Mrhjx2/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testIntVar) {

	zval _0;
	int a;
		zval this_zv;
	zval *this_ptr = getThis();
	if (EXPECTED(this_ptr)) {
		ZVAL_OBJ(&this_zv, Z_OBJ_P(this_ptr));
		this_ptr = &this_zv;
	} else this_ptr = NULL;
	
	ZVAL_UNDEF(&_0);


	a = 1;
	ZVAL_LONG(&_0, a);
	RETURN_BOOL(zephir_is_scalar(&_0));

}
コード例 #17
0
ファイル: isscalar.zep.c プロジェクト: Mrhjx2/zephir
PHP_METHOD(Test_Optimizers_IsScalar, testVarParameter) {

	zval *a, a_sub;
		zval this_zv;
	zval *this_ptr = getThis();
	if (EXPECTED(this_ptr)) {
		ZVAL_OBJ(&this_zv, Z_OBJ_P(this_ptr));
		this_ptr = &this_zv;
	} else this_ptr = NULL;
	
	ZVAL_UNDEF(&a_sub);

	zephir_fetch_params(0, 1, 0, &a);



	RETURN_BOOL(zephir_is_scalar(a));

}
コード例 #18
0
ファイル: scalarset.zep.c プロジェクト: wells5609/xpl
PHP_METHOD(Xpl_Collection_ScalarSet, cast) {

	zval *_1$$3;
	zend_bool _0;
	int ZEPHIR_LAST_CALL_STATUS;
	zval *value, *_3, *_4, *_5, *_2$$3 = NULL;

	ZEPHIR_MM_GROW();
	zephir_fetch_params(1, 1, 0, &value);



	_0 = Z_TYPE_P(value) == IS_NULL;
	if (!(_0)) {
		_0 = zephir_is_scalar(value);
	}
	if (likely(_0)) {
		ZEPHIR_INIT_VAR(_1$$3);
		zephir_create_array(_1$$3, 1, 0 TSRMLS_CC);
		zephir_array_update_string(&_1$$3, SL("scalar"), &value, PH_COPY | PH_SEPARATE);
		ZEPHIR_CPY_WRT(_2$$3, _1$$3);
		zephir_convert_to_object(_2$$3);
		RETURN_CCTOR(_2$$3);
	}
	ZEPHIR_INIT_VAR(_3);
	object_init_ex(_3, spl_ce_InvalidArgumentException);
	ZEPHIR_INIT_VAR(_4);
	zephir_gettype(_4, value TSRMLS_CC);
	ZEPHIR_INIT_VAR(_5);
	ZEPHIR_CONCAT_SV(_5, "Expecting null or scalar, given: ", _4);
	ZEPHIR_CALL_METHOD(NULL, _3, "__construct", NULL, 5, _5);
	zephir_check_call_status();
	zephir_throw_exception_debug(_3, "xpl/collection/scalarset.zep", 64 TSRMLS_CC);
	ZEPHIR_MM_RESTORE();
	return;

}
コード例 #19
0
ファイル: debug.zep.c プロジェクト: bschantz/cphalcon
/**
 * Produces a recursive representation of an array
 */
PHP_METHOD(Phalcon_Debug, _getArrayDump) {

	HashTable *_2;
	HashPosition _1;
	zend_bool _0;
	zephir_fcall_cache_entry *_4 = NULL, *_7 = NULL;
	int ZEPHIR_LAST_CALL_STATUS;
	zval *argument_param = NULL, *n = NULL, *numberArguments = NULL, *dump = NULL, *varDump = NULL, *k = NULL, *v = NULL, **_3, *_5$$8 = NULL, *_6$$8 = NULL, *_8$$9 = NULL, *_9$$5 = NULL;
	zval *argument = NULL;

	ZEPHIR_MM_GROW();
	zephir_fetch_params(1, 1, 1, &argument_param, &n);

	argument = argument_param;
	if (!n) {
		ZEPHIR_INIT_VAR(n);
		ZVAL_LONG(n, 0);
	}


	ZEPHIR_INIT_VAR(numberArguments);
	ZVAL_LONG(numberArguments, zephir_fast_count_int(argument TSRMLS_CC));
	_0 = ZEPHIR_GE_LONG(n, 3);
	if (!(_0)) {
		_0 = ZEPHIR_IS_LONG(numberArguments, 0);
	}
	if (_0) {
		RETURN_MM_NULL();
	}
	if (ZEPHIR_GE_LONG(numberArguments, 10)) {
		RETURN_CCTOR(numberArguments);
	}
	ZEPHIR_INIT_VAR(dump);
	array_init(dump);
	zephir_is_iterable(argument, &_2, &_1, 0, 0, "phalcon/debug.zep", 189);
	for (
	  ; zend_hash_get_current_data_ex(_2, (void**) &_3, &_1) == SUCCESS
	  ; zend_hash_move_forward_ex(_2, &_1)
	) {
		ZEPHIR_GET_HMKEY(k, _2, _1);
		ZEPHIR_GET_HVALUE(v, _3);
		if (ZEPHIR_IS_STRING(v, "")) {
			ZEPHIR_INIT_NVAR(varDump);
			ZVAL_STRING(varDump, "(empty string)", 1);
		} else if (zephir_is_scalar(v)) {
			ZEPHIR_CALL_METHOD(&varDump, this_ptr, "_escapestring", &_4, 0, v);
			zephir_check_call_status();
		} else if (Z_TYPE_P(v) == IS_ARRAY) {
			ZEPHIR_INIT_NVAR(_6$$8);
			ZVAL_LONG(_6$$8, (zephir_get_numberval(n) + 1));
			ZEPHIR_CALL_METHOD(&_5$$8, this_ptr, "_getarraydump", &_7, 159, v, _6$$8);
			zephir_check_call_status();
			ZEPHIR_INIT_NVAR(varDump);
			ZEPHIR_CONCAT_SVS(varDump, "Array(", _5$$8, ")");
		} else if (Z_TYPE_P(v) == IS_OBJECT) {
			ZEPHIR_INIT_NVAR(_8$$9);
			zephir_get_class(_8$$9, v, 0 TSRMLS_CC);
			ZEPHIR_INIT_NVAR(varDump);
			ZEPHIR_CONCAT_SVS(varDump, "Object(", _8$$9, ")");
		} else if (Z_TYPE_P(v) == IS_NULL) {
			ZEPHIR_INIT_NVAR(varDump);
			ZVAL_STRING(varDump, "null", 1);
		} else {
			ZEPHIR_CPY_WRT(varDump, v);
		}
		ZEPHIR_INIT_LNVAR(_9$$5);
		ZEPHIR_CONCAT_SVSV(_9$$5, "[", k, "] => ", varDump);
		zephir_array_append(&dump, _9$$5, PH_SEPARATE, "phalcon/debug.zep", 186);
	}
	zephir_fast_join_str(return_value, SL(", "), dump TSRMLS_CC);
	RETURN_MM();

}