pub fn get_current_key(&mut self) -> Option<Zval> {
        let get_current_key = unsafe { (*self.funcs).get_current_key? };
        let mut key = Zval::new();

        unsafe {
            get_current_key(&mut *self, &mut key);
        }

        if ExecutorGlobals::has_exception() {
            return None;
        }

        Some(key)
    }
Get the current key of the iterator.

# Returns

Returns a new [`Zval`] containing the current key of the iterator if
available , [`None`] otherwise.
src/types/iterator.rs