forma/
lib.rs

1// Copyright 2020 The Fuchsia Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#![doc(test(attr(deny(warnings))))]
6
7#[cfg(target_os = "fuchsia")]
8macro_rules! duration {
9    ($category:expr, $name:expr $(, $key:expr => $val:expr)*) => {
10        fuchsia_trace::duration!($category, $name $(, $key => $val)*)
11    }
12}
13
14#[cfg(not(target_os = "fuchsia"))]
15macro_rules! duration {
16    ($category:expr, $name:expr $(, $key:expr => $val:expr)*) => {};
17}
18
19pub mod buffer;
20mod composition;
21mod renderer;
22mod small_bit_set;
23mod utils;
24
25pub use crate::renderer::CpuRenderer;
26#[cfg(feature = "gpu")]
27pub use crate::renderer::GpuRenderer;
28pub use composition::{Composition, Layer};
29pub use utils::clear_buffer;
30
31pub use surpass::painter::{
32    BlendMode, Channel, Color, Fill, FillRule, Func, Gradient, GradientBuilder, GradientType,
33    Image, Props, Rect, Style, Texture, BGR0, BGR1, BGRA, RGB0, RGB1, RGBA,
34};
35pub use surpass::{
36    AffineTransform, GeomId, GeomPresTransform, GeomPresTransformError, Order, OrderError, Path,
37    PathBuilder, Point,
38};