blob: d322391e34cfe1ce34d029294231d197008a366d [file] [log] [blame] [edit]
/*! # The built-in rasterizers.
Plotters make a minimal backend ability assumption - which is drawing a pixel on
backend. And this is the rasterizer that utilize this minimal ability to build a
fully functioning backend.
*/
// TODO: We need to revisit this. It has been a long time since last time we figured out
// the question mark operator has a huge performance impact due to LLVM unable to handle it.
// So the question is if this trick is still useful, or LLVM is smart enough to handle it since
// then.
//
// --
// Original comment:
//
// ? operator is very slow. See issue #58 for details
macro_rules! check_result {
($e:expr) => {
let result = $e;
#[allow(clippy::question_mark)]
if result.is_err() {
return result;
}
};
}
mod line;
pub use line::draw_line;
mod rect;
pub use rect::draw_rect;
mod circle;
pub use circle::draw_circle;
mod polygon;
pub use polygon::fill_polygon;
mod path;
pub use path::polygonize;