util/dictionary: refactor and make more sound

This commit is contained in:
meh
2015-09-08 18:26:29 +02:00
parent 620958d684
commit f2fb08e491
16 changed files with 297 additions and 179 deletions

View File

@ -12,7 +12,7 @@ pub use self::flag::Flags;
use libc::c_int;
use ffi::*;
use ::Dictionary;
use ::{Dictionary, DictionaryRef};
#[derive(PartialEq, Eq, Copy, Clone, Debug)]
pub struct Packet {
@ -106,15 +106,15 @@ impl Frame {
}
}
pub fn metadata(&self) -> Dictionary {
pub fn metadata(&self) -> DictionaryRef {
unsafe {
Dictionary::wrap(av_frame_get_metadata(self.as_ptr()))
DictionaryRef::wrap(av_frame_get_metadata(self.as_ptr()))
}
}
pub fn set_metadata(&mut self, value: Dictionary) {
unsafe {
av_frame_set_metadata(self.as_mut_ptr(), value.take());
av_frame_set_metadata(self.as_mut_ptr(), value.disown());
}
}

View File

@ -5,7 +5,7 @@ use std::str::from_utf8_unchecked;
use ffi::*;
use super::Frame;
use ::Dictionary;
use ::DictionaryRef;
#[derive(Eq, PartialEq, Copy, Clone, Debug)]
pub enum Type {
@ -108,9 +108,9 @@ impl<'a> SideData<'a> {
}
#[inline]
pub fn metadata(&self) -> Dictionary {
pub fn metadata(&self) -> DictionaryRef {
unsafe {
Dictionary::wrap((*self.as_ptr()).metadata)
DictionaryRef::wrap((*self.as_ptr()).metadata)
}
}
}