summaryrefslogtreecommitdiff
path: root/include/environment.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/environment.h')
-rw-r--r--include/environment.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/include/environment.h b/include/environment.h
index 6484d83..a7512d7 100644
--- a/include/environment.h
+++ b/include/environment.h
@@ -107,7 +107,33 @@ public:
*/
Global operator[](const std::string &name);
-
+ /**
+ * Call a function in PHP
+ * We have ten variants of this function, depending on the number of parameters
+ * @param name Name of the function
+ * @return Value
+ */
+ Value call(const Value &name);
+ Value call(const Value &name, Value p0);
+ Value call(const Value &name, Value p0, Value p1);
+ Value call(const Value &name, Value p0, Value p1, Value p2);
+ Value call(const Value &name, Value p0, Value p1, Value p2, Value p3);
+ Value call(const Value &name, Value p0, Value p1, Value p2, Value p3, Value p4);
+ Value call(const Value &name, Value p0, Value p1, Value p2, Value p3, Value p4, Value p5);
+ Value call(const Value &name, Value p0, Value p1, Value p2, Value p3, Value p4, Value p5, Value p6);
+ Value call(const Value &name, Value p0, Value p1, Value p2, Value p3, Value p4, Value p5, Value p6, Value p7);
+ Value call(const Value &name, Value p0, Value p1, Value p2, Value p3, Value p4, Value p5, Value p6, Value p7, Value p8);
+ Value call(const Value &name, Value p0, Value p1, Value p2, Value p3, Value p4, Value p5, Value p6, Value p7, Value p8, Value p9);
+
+private:
+ /**
+ * Call function with a number of parameters
+ * @param name Function name
+ * @param argc Number of parameters
+ * @param argv The parameters
+ * @return Value
+ */
+ Value exec(const Value &name, int argc, struct _zval_struct ***params);
protected:
/**