| 171 | |
| 172 | impl BaseAddressDetectionSettings { |
| 173 | pub(crate) fn into_raw(value: &Self) -> BNBaseAddressDetectionSettings { |
| 174 | let arch_name = value |
| 175 | .arch |
| 176 | .map(|a| a.name().as_ptr()) |
| 177 | .unwrap_or(BASE_ADDRESS_AUTO_DETECTION_ARCH.as_ptr() as *const c_char); |
| 178 | BNBaseAddressDetectionSettings { |
| 179 | Architecture: arch_name, |
| 180 | Analysis: value.analysis.as_raw().as_ptr(), |
| 181 | MinStrlen: value.min_string_len, |
| 182 | Alignment: value.alignment.get(), |
| 183 | LowerBoundary: value.lower_boundary, |
| 184 | UpperBoundary: value.upper_boundary, |
| 185 | POIAnalysis: value.poi_analysis, |
| 186 | MaxPointersPerCluster: value.max_pointers, |
| 187 | } |
| 188 | } |
| 189 | |
| 190 | pub fn arch(mut self, value: CoreArchitecture) -> Self { |
| 191 | self.arch = Some(value); |