Recursively create files and folders in the project from a path on disk `parent` - Parent folder in the project that will contain the new folder `name` - Name for the created folder `description` - Description for created folder
(
&self,
parent: Option<&ProjectFolder>,
name: N,
description: D,
)
| 223 | /// * `name` - Name for the created folder |
| 224 | /// * `description` - Description for created folder |
| 225 | pub fn create_folder<N, D>( |
| 226 | &self, |
| 227 | parent: Option<&ProjectFolder>, |
| 228 | name: N, |
| 229 | description: D, |
| 230 | ) -> Result<Ref<ProjectFolder>, ()> |
| 231 | where |
| 232 | N: BnStrCompatible, |
| 233 | D: BnStrCompatible, |
| 234 | { |
| 235 | let name_raw = name.into_bytes_with_nul(); |
| 236 | let description_raw = description.into_bytes_with_nul(); |
| 237 | let parent_ptr = parent.map(|p| p.handle.as_ptr()).unwrap_or(null_mut()); |
| 238 | unsafe { |
| 239 | let result = BNProjectCreateFolder( |
| 240 | self.handle.as_ptr(), |
| 241 | parent_ptr, |
| 242 | name_raw.as_ref().as_ptr() as *const c_char, |
| 243 | description_raw.as_ref().as_ptr() as *const c_char, |
| 244 | ); |
| 245 | Ok(ProjectFolder::ref_from_raw(NonNull::new(result).ok_or(())?)) |
| 246 | } |
| 247 | } |
| 248 | |
| 249 | /// Recursively create files and folders in the project from a path on disk |
| 250 | /// |