- add util::raw_zvals to process variable number of zval* arguments (zval[])
- move raw_zval to util::raw_zval
- apply util::raw_zvals in mysqlx_collection.cc and mysqlx_collection__add.cc
- rename mysqlx_new_* functions to create_*
- refactor mysqlx_new* functions with util::init_object to use and return util::zvalue
- introduce raw_zval (temporary?) alias for zval (used where raw zval may be not replaced by util::zvalue)
- remove unnecessary util/hash_table.cc|.h
- CRUD Collection.Add: fix wrong management of raw zvals which was the main reason of incorrect behaviour (in Collection_add there was kept zval* object_zv;)
- fix related tests/add_with_empty_arg_is_noop.phpt
- add json_api.h header to safely include <ext/json/...> headers
- improvements in util::zvalue
- in all sources #include "php_api.h" instead of <php.h>
- #undef add_method - it comes from
./Zend/zend_API.h : 560
#define add_method(arg, key, method) add_assoc_function((arg), (key), (method))
- and conflicts with protobufs:
a) linux:
/usr/local/include/google/protobuf/descriptor.pb.h:1738:57: error: macro "add_method" requires 3 arguments, but only 1 given
::google::protobuf::MethodDescriptorProto* add_method();
b) win:
1>t:\protobuf\3.1.0\x86\debug\include\google\protobuf\descriptor.pb.h(1812): warning C4003: not enough actual parameters for macro 'add_method'
1>t:\protobuf\3.1.0\x86\debug\include\google\protobuf\descriptor.pb.h(1812): error C2059: syntax error: '('