diff options
Diffstat (limited to 'ext/java/java.c')
-rw-r--r-- | ext/java/java.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/ext/java/java.c b/ext/java/java.c index 0cdd8ad8cb..f1f5cb17d7 100644 --- a/ext/java/java.c +++ b/ext/java/java.c @@ -513,6 +513,22 @@ JNIEXPORT void JNICALL Java_net_php_reflect_setResultFromObject &handle, sizeof(pval *), NULL); } +JNIEXPORT void JNICALL Java_net_php_reflect_setResultFromArray + (JNIEnv *jenv, jclass self, jlong result) +{ + array_init( (pval*)(long)result ); +} + +JNIEXPORT jlong JNICALL Java_net_php_reflect_nextElement + (JNIEnv *jenv, jclass self, jlong array) +{ + pval *result; + pval *handle = (pval*)(long)array; + ALLOC_ZVAL(result); + zend_hash_next_index_insert(handle->value.ht, &result, sizeof(zval *), NULL); + return (jlong)(long)result; +} + JNIEXPORT void JNICALL Java_net_php_reflect_setException (JNIEnv *jenv, jclass self, jlong result, jstring value) { |