basic support for builtins
[m6w6/ext-psi] / src / context.h
index dc350fbf6d19bd1814f76d769fbf1b3fa4cbc0f6..248efbbe68ca162f8331b8535572c22ccbc6f8f5 100644 (file)
@@ -43,11 +43,12 @@ enum psi_context_query {
 };
 
 struct psi_context_ops {
+       ZEND_RESULT_CODE (*load)(void);
+       void (*free)(void);
        void (*init)(struct psi_context *C);
        void (*dtor)(struct psi_context *C);
        zend_function_entry *(*compile)(struct psi_context *C);
-       void (*call)(struct psi_context *C, struct psi_call_frame *frame, struct psi_decl *psi_decl, void *rval, void **args);
-       void (*call_va)(struct psi_context *C, struct psi_call_frame *frame, struct psi_decl *psi_decl, void *rval, void **args, size_t va_count, void **va_types);
+       void (*call)(struct psi_call_frame *frame);
        void *(*query)(struct psi_context *C, enum psi_context_query q, void *arg);
 };
 
@@ -72,10 +73,9 @@ struct psi_context_call_data {
 
 struct psi_context *psi_context_init(struct psi_context *C, struct psi_context_ops *ops, psi_error_cb error, unsigned flags);
 void psi_context_build(struct psi_context *C, const char *path);
-bool psi_context_add_data(struct psi_context *C, struct psi_data *P);
 zend_function_entry *psi_context_compile(struct psi_context *C);
 ZEND_RESULT_CODE psi_context_call(struct psi_context *C, zend_execute_data *execute_data, zval *return_value, struct psi_impl *impl);
-void psi_context_dump(struct psi_context *C, int fd);
+void psi_context_dump(struct psi_dump *dump, struct psi_context *C);
 void psi_context_dtor(struct psi_context *C);
 void psi_context_free(struct psi_context **C);