From 237c13779a0a30bf8a1fbfa94a8cc96f8b27ef59 Mon Sep 17 00:00:00 2001 From: Emiel Bruijntjes Date: Mon, 19 Jan 2015 22:08:16 +0100 Subject: the Constant class no longer wraps around a Php::Value, but uses the zend_constant struct directly --- zend/constant.cpp | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 58 insertions(+), 1 deletion(-) (limited to 'zend/constant.cpp') diff --git a/zend/constant.cpp b/zend/constant.cpp index a5358c6..83a4de0 100644 --- a/zend/constant.cpp +++ b/zend/constant.cpp @@ -18,9 +18,66 @@ namespace Php { * @param name Constant name * @param value Constant value */ -Constant::Constant(const char *name, const Value &value) : +Constant::Constant(const char *name, std::nullptr_t value) : _impl(new ConstantImpl(name, value)) {} +/** + * Constructor + * @param name Constant name + * @param value Constant value + */ +Constant::Constant(const char *name, bool value) : + _impl(new ConstantImpl(name, value)) {} + +/** + * Constructor + * @param name Constant name + * @param value Constant value + */ +Constant::Constant(const char *name, int32_t value) : + _impl(new ConstantImpl(name, value)) {} + +/** + * Constructor + * @param name Constant name + * @param value Constant value + */ +Constant::Constant(const char *name, int64_t value) : + _impl(new ConstantImpl(name, value)) {} + +/** + * Constructor + * @param name Constant name + * @param value Constant value + */ +Constant::Constant(const char *name, double value) : + _impl(new ConstantImpl(name, value)) {} + +/** + * Constructor + * @param name Constant name + * @param value Constant value + */ +Constant::Constant(const char *name, const char *value) : + _impl(new ConstantImpl(name, value)) {} + +/** + * Constructor + * @param name Constant name + * @param value Constant value + * @param size Value size + */ +Constant::Constant(const char *name, const char *value, size_t size) : + _impl(new ConstantImpl(name, value, size)) {} + +/** + * Constructor + * @param name Constant name + * @param value Constant value + */ +Constant::Constant(const char *name, const std::string &value) : + _impl(new ConstantImpl(name, value)) {} + /** * End of namespace */ -- cgit v1.2.3