diff options
author | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2013-08-28 23:11:57 +0200 |
---|---|---|
committer | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2013-08-28 23:11:57 +0200 |
commit | 5ab6927a5fa17e73161d7126ca506e5e51ba0e55 (patch) | |
tree | 321186e3f01c09c5f739725da5a06abc31104b67 /src/arguments.cpp | |
parent | d69d5ca8f8f6a8c75099052f8541d7144385572c (diff) |
added parameter handling, and return value handling
Diffstat (limited to 'src/arguments.cpp')
-rw-r--r-- | src/arguments.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/arguments.cpp b/src/arguments.cpp new file mode 100644 index 0000000..e5e7ae5 --- /dev/null +++ b/src/arguments.cpp @@ -0,0 +1,41 @@ +/** + * Arguments.cpp + * + * Implementation of the arguments class + * + * @author Emiel Bruijntjes <emiel.bruijntjes@copernica.com> + * @copyright 2013 Copernica BV + */ +#include "includes.h" + +/** + * Set up namespace + */ +namespace PhpCpp { + +/** + * Constructor + * @param argc Number of arguments + * @param tsrm_ls + */ +Arguments::Arguments(int argc TSRMLS_DC) +{ + // reserve plenty of space + reserve(argc); + + // loop through the arguments + for (int i=0; i<argc; i++) + { + // get the argument + zval **arg = (zval **) (zend_vm_stack_top(TSRMLS_C) - 1 - (argc-i)); + + // append value + push_back(Value(*arg)); + } +} + +/** + * End of namespace + */ +} + |