Home  >  Article  >  Backend Development  >  Write PHP extension function return value macro definition

Write PHP extension function return value macro definition

巴扎黑
巴扎黑Original
2016-11-22 15:13:181285browse

#define ZVAL_FALSE(z)  ZVAL_BOOL(z, 0) 
#define ZVAL_TRUE(z)  ZVAL_BOOL(z, 1) 

#define RETVAL_RESOURCE(l) ZVAL_RESOURCE(return_value, l) 
#define RETVAL_BOOL(b) ZVAL_BOOL(return_value, b) 
#define RETVAL_NULL() ZVAL_NULL(return_value) 
#define RETVAL_LONG(l) ZVAL_LONG(return_value, l) 
#define RETVAL_DOUBLE(d) ZVAL_DOUBLE(return_value, d) 
#define RETVAL_STRING(s, duplicate) ZVAL_STRING(return_value, s, duplicate) 
#define RETVAL_STRINGL(s, l, duplicate) ZVAL_STRINGL(return_value, s, l, duplicate) 
#define RETVAL_EMPTY_STRING() ZVAL_EMPTY_STRING(return_value) 
#define RETVAL_ZVAL(zv, copy, dtor) ZVAL_ZVAL(return_value, zv, copy, dtor) 
#define RETVAL_FALSE  ZVAL_BOOL(return_value, 0) 
#define RETVAL_TRUE   ZVAL_BOOL(return_value, 1) 

#define RETURN_RESOURCE(l) { RETVAL_RESOURCE(l); return; } 
#define RETURN_BOOL(b) { RETVAL_BOOL(b); return; } 
#define RETURN_NULL() { RETVAL_NULL(); return;} 
#define RETURN_LONG(l) { RETVAL_LONG(l); return; } 
#define RETURN_DOUBLE(d) { RETVAL_DOUBLE(d); return; } 
#define RETURN_STRING(s, duplicate) { RETVAL_STRING(s, duplicate); return; } 
#define RETURN_STRINGL(s, l, duplicate) { RETVAL_STRINGL(s, l, duplicate); return; } 
#define RETURN_EMPTY_STRING() { RETVAL_EMPTY_STRING(); return; } 
#define RETURN_ZVAL(zv, copy, dtor) { RETVAL_ZVAL(zv, copy, dtor); return; } 
#define RETURN_FALSE  { RETVAL_FALSE; return; } 
#define RETURN_TRUE   { RETVAL_TRUE; return; }

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn