From ca595b1d7aa8ed4a482b8a5ea598ecc1a2636083 Mon Sep 17 00:00:00 2001 From: Martijn Otto Date: Mon, 17 Feb 2014 16:20:09 +0100 Subject: Some code cleanup --- include/const.h | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 include/const.h (limited to 'include/const.h') diff --git a/include/const.h b/include/const.h new file mode 100644 index 0000000..4f11278 --- /dev/null +++ b/include/const.h @@ -0,0 +1,55 @@ +/** + * Const.h + * + * Class for adding constant properties to a class + * + * @author Emiel Bruijntjes + * @copyright 2013 Copernica BV + */ + +/** + * Namespace + */ +namespace Php { + +/** + * Class definition + */ +class Const : public Member +{ +public: + /** + * Constructor + * @param name Name of the property + * @param value Default value of the property + */ + Const(const char *name) : Member(name, MemberModifier::constMember) {} + Const(const char *name, std::nullptr_t value) : Member(name, MemberModifier::constMember, value) {} + Const(const char *name, int value) : Member(name, MemberModifier::constMember, value) {} + Const(const char *name, long value) : Member(name, MemberModifier::constMember, value) {} + Const(const char *name, bool value) : Member(name, MemberModifier::constMember, value) {} + Const(const char *name, char value) : Member(name, MemberModifier::constMember, value) {} + Const(const char *name, const std::string &value) : Member(name, MemberModifier::constMember, value) {} + Const(const char *name, const char *value, int size=-1) : Member(name, MemberModifier::constMember, value, size) {} + Const(const char *name, double value) : Member(name, MemberModifier::constMember, value) {} + + /** + * Constructor + * @param name Name of the property + * @param method Method to add + * @param arguments Optional argument information + */ + Const(const char *name, const _Method &method, const std::initializer_list &arguments = {}) : Member(name, MemberModifier::constMember, method, arguments) {} + + /** + * Destructor + */ + virtual ~Const() {} + +}; + +/** + * End of namespace + */ +} + -- cgit v1.2.3