diff options
| author | Brian Potchik <brian@vector35.com> | 2024-05-27 15:29:48 -0400 |
|---|---|---|
| committer | Brian Potchik <brian@vector35.com> | 2024-05-27 15:29:48 -0400 |
| commit | a348dab8b14b8ddd36c400ae39a7a48b6a28e829 (patch) | |
| tree | c5aa3b6274b57660d263de44ac1eccc9bfa8739d /rust/src/metadata.rs | |
| parent | 309d606f1c51168c0ef30ccf7850d483429fa35b (diff) | |
Update load APIs to take a JSON string for options.
Diffstat (limited to 'rust/src/metadata.rs')
| -rw-r--r-- | rust/src/metadata.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/rust/src/metadata.rs b/rust/src/metadata.rs index c8c532f3..f635700f 100644 --- a/rust/src/metadata.rs +++ b/rust/src/metadata.rs @@ -166,6 +166,19 @@ impl Metadata { } } + pub fn get_json_string(&self) -> Result<BnString, ()> { + match self.get_type() { + MetadataType::StringDataType => { + let ptr: *mut c_char = unsafe { BNMetadataGetJsonString(self.handle) }; + if ptr.is_null() { + return Err(()); + } + Ok(unsafe { BnString::from_raw(ptr) }) + } + _ => Err(()), + } + } + pub fn get_raw(&self) -> Result<Vec<u8>, ()> { match self.get_type() { MetadataType::RawDataType => { |
