extern crate cpp_to_rust;
use cpp_to_rust::config::Config;
use cpp_to_rust::errors::{Result};
extern crate qt_build_tools;
use qt_build_tools::QtConfig;
fn setup() -> Result<()> {
let mut config = Config::new();
try!(config.setup_qt_library());
config.exclude_qlist_eq_based_methods(&["QTableWidgetSelectionRange", "QTextEdit::ExtraSelection"]);
config.add_cpp_ffi_generator_filter(Box::new(|method| {
if let Some(ref info) = method.class_membership {
match info.class_type.to_cpp_pseudo_code().as_ref() {
"QQueue<QTableWidgetSelectionRange>" |
"QQueue<QTextEdit::ExtraSelection>" => {
match method.name.as_ref() {
"operator==" | "operator!=" => return Ok(false),
_ => {}
}
}
_ => {}
}
}
Ok(true)
}));
config.exec()
}
fn main() {
if let Err(err) = setup() {
err.display_report();
std::process::exit(1);
}
}