Create a new [CmapIterStart] object for iterating over a list of cmap keys
(cmap_handle: &Handle, prefix: &str)
| 889 | impl CmapIterStart { |
| 890 | /// Create a new [CmapIterStart] object for iterating over a list of cmap keys |
| 891 | pub fn new(cmap_handle: &Handle, prefix: &str) -> Result<CmapIterStart> { |
| 892 | let mut iter_handle: u64 = 0; |
| 893 | let res = unsafe { |
| 894 | let c_prefix = string_to_cstring_validated(prefix, CMAP_KEYNAME_MAXLENGTH)?; |
| 895 | ffi::cmap_iter_init(cmap_handle.cmap_handle, c_prefix.as_ptr(), &mut iter_handle) |
| 896 | }; |
| 897 | if res == ffi::CS_OK { |
| 898 | Ok(CmapIterStart { |
| 899 | cmap_handle: cmap_handle.cmap_handle, |
| 900 | iter_handle, |
| 901 | }) |
| 902 | } else { |
| 903 | Err(CsError::from_c(res)) |
| 904 | } |
| 905 | } |
| 906 | } |
| 907 | |
| 908 | impl IntoIterator for CmapIterStart { |
nothing calls this directly
no test coverage detected