Rename modules (#95)
* Rename algo.rs to flexbox.rs
* Move id.rs into node.rs
* Rename result.rs to layout.rs
8f72a707eb069d7d324096c7405b383f8245f25d · por Alice Cecile · (hace 4 años) · padre a1e917408 · ver el árbol en este commit
10 archivos · +1747 −1754
diff --git a/RELEASES.md b/RELEASES.md
index 3f3b6036a..c19a2e51a 100644
--- a/RELEASES.md
+++ b/RELEASES.md
@@ -7,7 +7,7 @@
- the `order` field of `Layout` is now public, and describes the relative z-ordering of nodes
- renamed crate from `stretch2` to `sprawl`
- updated to the latest version of all dependencies to reduce upstream pain caused by duplicate dependencies
-- Renamed `stretch::node::Strech` -> `sprawl::node::Sprawl`
+- renamed `stretch::node::Strech` -> `sprawl::node::Sprawl`
### 0.1.0 Fixed
diff --git a/src/algo.rs b/src/flexbox.rs
similarity index 99%
rename from src/algo.rs
rename to src/flexbox.rs
index 8a43094d6..e002e019d 100644
--- a/src/algo.rs
+++ b/src/flexbox.rs
@@ -1,13 +1,12 @@
use core::f32;
-use crate::algo::Number::{Defined, Undefined};
+use crate::flexbox::Number::{Defined, Undefined};
use crate::forest::{Forest, NodeData};
use crate::geometry::{Point, Rect, Size};
-use crate::id::NodeId;
-use crate::node::MeasureFunc;
+use crate::layout;
+use crate::node::{MeasureFunc, NodeId};
use crate::number::{MinMax, OrElse};
use crate::prelude::Number;
-use crate::result;
use crate::style::{AlignContent, AlignSelf, Dimension, Display, FlexWrap, JustifyContent, PositionType};
use crate::style::{FlexDirection, Style};
use crate::sys;
@@ -105,7 +104,7 @@ impl Forest {
self.compute_internal(root, style.size.resolve(size), size, true, true)
};
- self.nodes[root].layout = result::Layout { order: 0, size: result.size, location: Point::zero() };
+ self.nodes[root].layout = layout::Layout { order: 0, size: result.size, location: Point::zero() };
Self::round_layout(&mut self.nodes, &self.children, root, 0.0, 0.0);
}
@@ -132,7 +131,7 @@ impl Forest {
}
}
- fn cache(&mut self, node: NodeId, main_size: bool) -> &mut Option<result::Cache> {
+ fn cache(&mut self, node: NodeId, main_size: bool) -> &mut Option<layout::Cache> {
if main_size {
&mut self.nodes[node].main_size_layout_cache
} else {
@@ -781,7 +780,7 @@ impl Forest {
flex_lines: &mut [FlexLine],
constants: &AlgoConstants,
) {
- fn calc_baseline(db: &Forest, node: NodeId, layout: &result::Layout) -> f32 {
+ fn calc_baseline(db: &Forest, node: NodeId, layout: &layout::Layout) -> f32 {
if db.children[node].is_empty() {
layout.size.height
} else {
@@ -821,7 +820,7 @@ impl Forest {
child.baseline = calc_baseline(
self,
child.node,
- &result::Layout {
+ &layout::Layout {
order: self.children[node].iter().position(|n| *n == child.node).unwrap() as u32,
size: result.size,
location: Point::zero(),
@@ -1322,7 +1321,7 @@ impl Forest {
+ (child.position.cross_start(constants.dir).or_else(0.0)
- child.position.cross_end(constants.dir).or_else(0.0));
- self.nodes[child.node].layout = result::Layout {
+ self.nodes[child.node].layout = layout::Layout {
order: self.children[node].iter().position(|n| *n == child.node).unwrap() as u32,
size: result.size,
location: Point {
@@ -1487,7 +1486,7 @@ impl Forest {
}
};
- self.nodes[child].layout = result::Layout {
+ self.nodes[child].layout = layout::Layout {
order: order as u32,
size: result.size,
location: Point {
@@ -1529,7 +1528,7 @@ impl Forest {
MeasureFunc::Boxed(measure) => ComputeResult { size: measure(node_size) },
};
*self.cache(node, main_size) =
- Some(result::Cache { node_size, parent_size, perform_layout, result: result.clone() });
+ Some(layout::Cache { node_size, parent_size, perform_layout, result: result.clone() });
return result;
}
@@ -1649,7 +1648,7 @@ impl Forest {
if !perform_layout {
let result = ComputeResult { size: constants.container_size };
*self.cache(node, main_size) =
- Some(result::Cache { node_size, parent_size, perform_layout, result: result.clone() });
+ Some(layout::Cache { node_size, parent_size, perform_layout, result: result.clone() });
return result;
}
@@ -1663,7 +1662,7 @@ impl Forest {
self.perform_absolute_layout_on_absolute_children(node, &constants);
fn hidden_layout(nodes: &mut [NodeData], children: &[sys::ChildrenVec<NodeId>], node: NodeId, order: u32) {
- nodes[node].layout = result::Layout { order, size: Size::zero(), location: Point::zero() };
+ nodes[node].layout = layout::Layout { order, size: Size::zero(), location: Point::zero() };
for (order, child) in children[node].iter().enumerate() {
hidden_layout(nodes, children, *child, order as _);
@@ -1678,7 +1677,7 @@ impl Forest {
let result = ComputeResult { size: constants.container_size };
*self.cache(node, main_size) =
- Some(result::Cache { node_size, parent_size, perform_layout, result: result.clone() });
+ Some(layout::Cache { node_size, parent_size, perform_layout, result: result.clone() });
result
}
diff --git a/src/forest.rs b/src/forest.rs
index 7b5d4535f..e03b3fa88 100644
--- a/src/forest.rs
+++ b/src/forest.rs
@@ -2,10 +2,9 @@
//!
//! Backing datastructure for `Sprawl` structs.
use crate::geometry::Size;
-use crate::id::NodeId;
-use crate::node::MeasureFunc;
+use crate::layout::{Cache, Layout};
+use crate::node::{MeasureFunc, NodeId};
use crate::number::Number;
-use crate::result::{Cache, Layout};
use crate::style::Style;
use crate::sys::{new_vec_with_capacity, ChildrenVec, ParentsVec, Vec};
diff --git a/src/id.rs b/src/id.rs
deleted file mode 100644
index a29f12e98..000000000
--- a/src/id.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-//! Identifier for a Node
-//!
-//!
-use core::sync::atomic::{AtomicUsize, Ordering};
-
-/// Internal node id.
-pub(crate) type NodeId = usize;
-
-#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash)]
-#[cfg_attr(not(any(feature = "std", feature = "alloc")), derive(hash32_derive::Hash32))]
-pub(crate) struct Id(usize);
-
-pub(crate) struct Allocator {
- new_id: AtomicUsize,
-}
-
-impl Allocator {
- pub const fn new() -> Self {
- Self { new_id: AtomicUsize::new(0) }
- }
-
- pub fn allocate(&self) -> Id {
- Id(self.new_id.fetch_add(1, Ordering::Relaxed))
- }
-
- pub fn free(&self, _ids: &[Id]) {}
-}
diff --git a/src/result.rs b/src/layout.rs
similarity index 96%
rename from src/result.rs
rename to src/layout.rs
index 0126ccd92..f4be8c371 100644
--- a/src/result.rs
+++ b/src/layout.rs
@@ -1,4 +1,4 @@
-use crate::algo::ComputeResult;
+use crate::flexbox::ComputeResult;
use crate::geometry::{Point, Size};
use crate::number::Number;
diff --git a/src/lib.rs b/src/lib.rs
index 654384fa4..bc7950ac1 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -9,15 +9,14 @@ extern crate alloc;
extern crate serde;
pub mod geometry;
+pub mod layout;
pub mod node;
pub mod number;
pub mod prelude;
-pub mod result;
pub mod style;
-mod algo;
+mod flexbox;
mod forest;
-mod id;
mod sys;
#[cfg(feature = "std")]
diff --git a/src/node.rs b/src/node.rs
index 19f1881f3..666b08edd 100644
--- a/src/node.rs
+++ b/src/node.rs
@@ -2,14 +2,14 @@ use core::ops::Drop;
use crate::forest::Forest;
use crate::geometry::Size;
-use crate::id::{Allocator, Id, NodeId};
+use crate::layout::Layout;
use crate::number::Number;
-use crate::result::Layout;
use crate::style::Style;
#[cfg(any(feature = "std", feature = "alloc"))]
use crate::sys::Box;
use crate::sys::{new_map_with_capacity, ChildrenVec, Map, Vec};
use crate::Error;
+use core::sync::atomic::{AtomicUsize, Ordering};
pub enum MeasureFunc {
Raw(fn(Size<Number>) -> Size<f32>),
@@ -236,3 +236,26 @@ impl Drop for Sprawl {
INSTANCE_ALLOCATOR.free(&[self.id]);
}
}
+
+/// Internal node id.
+pub(crate) type NodeId = usize;
+
+#[derive(Copy, Clone, Debug, PartialEq, Eq, Hash)]
+#[cfg_attr(not(any(feature = "std", feature = "alloc")), derive(hash32_derive::Hash32))]
+pub(crate) struct Id(usize);
+
+pub(crate) struct Allocator {
+ new_id: AtomicUsize,
+}
+
+impl Allocator {
+ pub const fn new() -> Self {
+ Self { new_id: AtomicUsize::new(0) }
+ }
+
+ pub fn allocate(&self) -> Id {
+ Id(self.new_id.fetch_add(1, Ordering::Relaxed))
+ }
+
+ pub fn free(&self, _ids: &[Id]) {}
+}
diff --git a/src/prelude.rs b/src/prelude.rs
index 81ff4804e..a9eec8986 100644
--- a/src/prelude.rs
+++ b/src/prelude.rs
@@ -1,8 +1,8 @@
pub use crate::{
geometry::{Rect, Size},
+ layout::Layout,
node::{Node, Sprawl},
number::Number,
- result::Layout,
style::{
AlignContent, AlignItems, AlignSelf, Dimension, Direction, Display, FlexDirection, FlexWrap, JustifyContent,
Overflow, PositionType, Style,