|
13 | 13 | //! TODO Add lambda. |
14 | 14 |
|
15 | 15 | use crate::{ |
16 | | - alloc::EBox, |
17 | 16 | cg, |
18 | 17 | classes::Visibility, |
19 | 18 | errors::{ArgumentCountError, CallFunctionError, CallMethodError}, |
@@ -245,7 +244,7 @@ impl ZendFunction { |
245 | 244 |
|
246 | 245 | pub(crate) fn call( |
247 | 246 | &mut self, mut object: Option<&mut ZObj>, mut arguments: impl AsMut<[ZVal]>, |
248 | | - ) -> crate::Result<EBox<ZVal>> { |
| 247 | + ) -> crate::Result<ZVal> { |
249 | 248 | let arguments = arguments.as_mut(); |
250 | 249 | let function_handler = self.as_mut_ptr(); |
251 | 250 |
|
@@ -422,14 +421,14 @@ pub(crate) const fn create_zend_arg_info( |
422 | 421 | /// Ok(()) |
423 | 422 | /// } |
424 | 423 | /// ``` |
425 | | -pub fn call(fn_name: &str, arguments: impl AsMut<[ZVal]>) -> crate::Result<EBox<ZVal>> { |
| 424 | +pub fn call(fn_name: &str, arguments: impl AsMut<[ZVal]>) -> crate::Result<ZVal> { |
426 | 425 | let mut func = fn_name.into(); |
427 | 426 | call_internal(&mut func, None, arguments) |
428 | 427 | } |
429 | 428 |
|
430 | 429 | pub(crate) fn call_internal( |
431 | 430 | func: &mut ZVal, mut object: Option<&mut ZObj>, mut arguments: impl AsMut<[ZVal]>, |
432 | | -) -> crate::Result<EBox<ZVal>> { |
| 431 | +) -> crate::Result<ZVal> { |
433 | 432 | let func_ptr = func.as_mut_ptr(); |
434 | 433 | let arguments = arguments.as_mut(); |
435 | 434 |
|
@@ -469,8 +468,8 @@ pub(crate) fn call_internal( |
469 | 468 | pub(crate) fn call_raw_common( |
470 | 469 | call_fn: impl FnOnce(&mut ZVal) -> bool, name_fn: impl FnOnce() -> crate::Result<String>, |
471 | 470 | object: Option<&mut ZObj>, |
472 | | -) -> crate::Result<EBox<ZVal>> { |
473 | | - let mut ret = EBox::new(ZVal::from(())); |
| 471 | +) -> crate::Result<ZVal> { |
| 472 | + let mut ret = ZVal::default(); |
474 | 473 |
|
475 | 474 | if call_fn(&mut ret) && !ret.get_type_info().is_undef() { |
476 | 475 | return Ok(ret); |
|
0 commit comments