pub fn load_filename<T: Into<Vec<u8>>>(filename: T) -> Option<Tsf> {
        let filename_cstring = CString::new(filename).expect("filename wasn't a valid C string - did it have an internal 0 byte?");
        let tsf_ptr: *mut tsf = unsafe { tsf_load_filename(filename_cstring.as_ptr()) };
        if tsf_ptr.is_null() { None } else { Some(Tsf::new(tsf_ptr)) }
    }
/// Load from a filename of a soundfont (.sf2) file.
// TODO: Should really take a path or something like that
// TODO: Should really return a result
Load from a filename of a soundfont (.sf2) file.
TODO: Should really take a path or something like that
TODO: Should really return a result
Load from a filename of a soundfont ( . sf2 ) file . TODO : Should really take a path or something like that TODO : Should really return a result
pub fn load_filename<T: Into<Vec<u8>>>(filename: T) -> Option<Tsf> {
        let filename_cstring = CString::new(filename).expect("filename wasn't a valid C string - did it have an internal 0 byte?");
        let tsf_ptr: *mut tsf = unsafe { tsf_load_filename(filename_cstring.as_ptr()) };
        if tsf_ptr.is_null() { None } else { Some(Tsf::new(tsf_ptr)) }
    }
pub fn load_filename < T : Into < Vec < u8 > > > ( filename : T ) -> Option < Tsf > { let filename_cstring = CString :: new ( filename ) . expect ( " " ) ; let tsf_ptr : * mut tsf = unsafe { tsf_load_filename ( filename_cstring . as_ptr ( ) ) } ; if tsf_ptr . is_null ( ) { None } else { Some ( Tsf :: new ( tsf_ptr ) ) } }
Load from a filename of a soundfont (.sf2) file.
Load from a filename of a soundfont ( . sf2 ) file .
filename
T
filename
T