gioser

tawasuyu/taffy

A high performance rust-powered UI layout library

HTML 5544Rust 89Markdown 11TOML 91930 Sutichaykuna

added prelude + some refactoring

4c14991d8cb32e0b8f87b0dde48035a1d493331d · ruwaq Adam Nemecek · (6 wata ñawpaq) · tayta 841e57fae · kay commitpi sach'ata qhaway

Semántico sayk'uy · 14

examples/basic.rs

  • silq'uyninpi t'ikrakurqan fn main

src/lib.rs

src/number.rs

  • silq'uyninpi t'ikrakurqan fn add
  • silq'uyninpi t'ikrakurqan fn add
  • silq'uyninpi t'ikrakurqan fn default
  • silq'uyninpi t'ikrakurqan fn div
  • silq'uyninpi t'ikrakurqan fn div
  • silq'uyninpi t'ikrakurqan fn maybe_max
  • silq'uyninpi t'ikrakurqan fn maybe_min
  • silq'uyninpi t'ikrakurqan fn mul
  • silq'uyninpi t'ikrakurqan fn mul
  • silq'uyninpi t'ikrakurqan fn or_else
  • silq'uyninpi t'ikrakurqan fn sub
  • silq'uyninpi t'ikrakurqan fn sub

4 qillqakuna · +55 −19

diff --git a/examples/basic.rs b/examples/basic.rs
index d80564393..cdfafc865 100644
--- a/examples/basic.rs
+++ b/examples/basic.rs
@@ -1,8 +1,7 @@
-use stretch::geometry::Size;
-use stretch::style::*;
+use stretch::prelude::*;
 
-fn main() -> Result<(), stretch::Error> {
-    let mut stretch = stretch::node::Stretch::new();
+fn main() -> Result<(), Error> {
+    let mut stretch = Stretch::new();
     let child = stretch.new_node(
         Style { size: Size { width: Dimension::Percent(0.5), height: Dimension::Auto }, ..Default::default() },
         &[],
diff --git a/src/lib.rs b/src/lib.rs
index 482f36432..80448d802 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -12,6 +12,7 @@ pub mod node;
 pub mod number;
 pub mod result;
 pub mod style;
+pub mod prelude;
 
 mod algo;
 mod forest;
diff --git a/src/number.rs b/src/number.rs
index a006d3c3e..18ec8b140 100644
--- a/src/number.rs
+++ b/src/number.rs
@@ -18,8 +18,8 @@ pub trait OrElse<T> {
 }
 
 impl Default for Number {
-    fn default() -> Number {
-        Number::Undefined
+    fn default() -> Self {
+        Self::Undefined
     }
 }
 
@@ -32,8 +32,8 @@ impl OrElse<f32> for Number {
     }
 }
 
-impl OrElse<Number> for Number {
-    fn or_else(self, other: Number) -> Number {
+impl OrElse<Self> for Number {
+    fn or_else(self, other: Self) -> Self {
         match self {
             Number::Defined(_) => self,
             Number::Undefined => other,
@@ -62,8 +62,8 @@ pub trait MinMax<In, Out> {
     fn maybe_max(self, rhs: In) -> Out;
 }
 
-impl MinMax<Number, Number> for Number {
-    fn maybe_min(self, rhs: Number) -> Number {
+impl MinMax<Self, Self> for Number {
+    fn maybe_min(self, rhs: Self) -> Self {
         match self {
             Number::Defined(val) => match rhs {
                 Number::Defined(other) => Number::Defined(val.min(other)),
@@ -73,7 +73,7 @@ impl MinMax<Number, Number> for Number {
         }
     }
 
-    fn maybe_max(self, rhs: Number) -> Number {
+    fn maybe_max(self, rhs: Self) -> Self {
         match self {
             Number::Defined(val) => match rhs {
                 Number::Defined(other) => Number::Defined(val.max(other)),
@@ -125,7 +125,7 @@ impl ToNumber for f32 {
 impl ops::Add<f32> for Number {
     type Output = Number;
 
-    fn add(self, rhs: f32) -> Number {
+    fn add(self, rhs: f32) -> Self {
         match self {
             Number::Defined(val) => Number::Defined(val + rhs),
             Number::Undefined => Number::Undefined,
@@ -136,7 +136,7 @@ impl ops::Add<f32> for Number {
 impl ops::Add<Number> for Number {
     type Output = Number;
 
-    fn add(self, rhs: Number) -> Number {
+    fn add(self, rhs: Self) -> Self {
         match self {
             Number::Defined(val) => match rhs {
                 Number::Defined(other) => Number::Defined(val + other),
@@ -150,7 +150,7 @@ impl ops::Add<Number> for Number {
 impl ops::Sub<f32> for Number {
     type Output = Number;
 
-    fn sub(self, rhs: f32) -> Number {
+    fn sub(self, rhs: f32) -> Self {
         match self {
             Number::Defined(val) => Number::Defined(val - rhs),
             Number::Undefined => Number::Undefined,
@@ -161,7 +161,7 @@ impl ops::Sub<f32> for Number {
 impl ops::Sub<Number> for Number {
     type Output = Number;
 
-    fn sub(self, rhs: Number) -> Number {
+    fn sub(self, rhs: Self) -> Self {
         match self {
             Number::Defined(val) => match rhs {
                 Number::Defined(other) => Number::Defined(val - other),
@@ -175,7 +175,7 @@ impl ops::Sub<Number> for Number {
 impl ops::Mul<f32> for Number {
     type Output = Number;
 
-    fn mul(self, rhs: f32) -> Number {
+    fn mul(self, rhs: f32) -> Self {
         match self {
             Number::Defined(val) => Number::Defined(val * rhs),
             Number::Undefined => Number::Undefined,
@@ -186,7 +186,7 @@ impl ops::Mul<f32> for Number {
 impl ops::Mul<Number> for Number {
     type Output = Number;
 
-    fn mul(self, rhs: Number) -> Number {
+    fn mul(self, rhs: Self) -> Self {
         match self {
             Number::Defined(val) => match rhs {
                 Number::Defined(other) => Number::Defined(val * other),
@@ -200,7 +200,7 @@ impl ops::Mul<Number> for Number {
 impl ops::Div<f32> for Number {
     type Output = Number;
 
-    fn div(self, rhs: f32) -> Number {
+    fn div(self, rhs: f32) -> Self {
         match self {
             Number::Defined(val) => Number::Defined(val / rhs),
             Number::Undefined => Number::Undefined,
@@ -211,7 +211,7 @@ impl ops::Div<f32> for Number {
 impl ops::Div<Number> for Number {
     type Output = Number;
 
-    fn div(self, rhs: Number) -> Number {
+    fn div(self, rhs: Self) -> Self {
         match self {
             Number::Defined(val) => match rhs {
                 Number::Defined(other) => Number::Defined(val / other),
diff --git a/src/prelude.rs b/src/prelude.rs
new file mode 100644
index 000000000..574e0eba3
--- /dev/null
+++ b/src/prelude.rs
@@ -0,0 +1,36 @@
+pub use crate::geometry::{
+    Rect,
+    Size
+};
+
+pub use crate::node::{
+    Node,
+    Stretch
+};
+
+pub use crate::number::{
+    Number
+};
+
+pub use crate::result::{
+    Layout
+};
+
+pub use crate::style::{
+    AlignContent,
+    AlignItems,
+    AlignSelf,
+    Dimension,
+    Direction,
+    Display,
+    FlexDirection,
+    FlexWrap,
+    JustifyContent,
+    Overflow,
+    PositionType,
+    Style,
+};
+
+pub use crate::{
+    Error
+};