size_t psi_call_frame_num_fixed_args(struct psi_call_frame *frame);
zval *psi_call_frame_new_argument(struct psi_call_frame *frame, struct psi_call_frame_argument *frame_arg);
-zval *psi_call_frame_sub_argument(struct psi_call_frame *frame, struct psi_impl_var *inner_var, zval *outer_zval, const char *name);
+zval *psi_call_frame_sub_argument(struct psi_call_frame *frame, struct psi_impl_var *inner_var, zval *outer_zval, zend_string *name);
-struct psi_call_frame_argument *psi_call_frame_get_argument(struct psi_call_frame *frame, const char *name);
+struct psi_call_frame_argument *psi_call_frame_get_argument(struct psi_call_frame *frame, zend_string *name);
struct psi_call_frame_argument *psi_call_frame_get_var_argument(struct psi_call_frame *frame, zend_long index);
struct psi_call_frame_symbol *psi_call_frame_fetch_symbol(struct psi_call_frame *frame, struct psi_decl_var *dvar);
void psi_call_frame_enter(struct psi_call_frame *frame);
+struct psi_context *psi_call_frame_get_context(struct psi_call_frame *frame);
+struct psi_decl *psi_call_frame_get_decl(struct psi_call_frame *frame);
+struct psi_impl *psi_call_frame_get_impl(struct psi_call_frame *frame);
void **psi_call_frame_get_arg_pointers(struct psi_call_frame *frame);
+void *psi_call_frame_get_rpointer(struct psi_call_frame *frame);
ZEND_RESULT_CODE psi_call_frame_do_let(struct psi_call_frame *frame);
+ZEND_RESULT_CODE psi_call_frame_do_assert(struct psi_call_frame *frame, enum psi_assert_kind kind);
void psi_call_frame_do_call(struct psi_call_frame *frame);
void psi_call_frame_do_callback(struct psi_call_frame *frame, struct psi_call_frame_callback *cb);
void psi_call_frame_do_return(struct psi_call_frame *frame, zval *return_value);
void psi_call_frame_free(struct psi_call_frame *frame);
-
#endif