diff options
Diffstat (limited to 'include/byval.h')
-rw-r--r-- | include/byval.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/include/byval.h b/include/byval.h new file mode 100644 index 0000000..a31c1f7 --- /dev/null +++ b/include/byval.h @@ -0,0 +1,60 @@ +/** + * ByVal.h + * + * Overridden Argument class to specify by-value function arguments + * + * @author Emiel Bruijntjes <emiel.bruijntjes@copernica.com> + * @copyright 2013 Copernica BV + */ + +/** + * Namespace + */ +namespace Php { + +/** + * Class definition + */ +class ByVal : public Argument +{ +public: + /** + * Constructor + * @param name Name of the argument + * @param type Argument type + * @param required Is this argument required? + */ + ByVal(const char *name, Type type, bool required = true) : Argument(name, type, required, false) {} + + /** + * Constructor + * @param name Name of the argument + * @param classname Name of the class + * @param nullable Can it be null? + * @param required Is this argument required? + */ + ByVal(const char *name, const char *classname, bool nullable = true, bool required = true) : Argument(name, classname, nullable, required, false) {} + + /** + * Copy constructor + * @param argument + */ + ByVal(const ByVal &argument) : Argument(argument) {} + + /** + * Move constructor + * @param argument + */ + ByVal(ByVal &&argument) : Argument(argument) {} + + /** + * Destructor + */ + virtual ~ByVal() {} +}; + +/** + * End of namespace + */ +} + |