summaryrefslogtreecommitdiffstats
path: root/packages/svgbob/src/buffer
diff options
context:
space:
mode:
Diffstat (limited to 'packages/svgbob/src/buffer')
-rw-r--r--packages/svgbob/src/buffer/cell_buffer.rs11
-rw-r--r--packages/svgbob/src/buffer/cell_buffer/cell.rs11
-rw-r--r--packages/svgbob/src/buffer/cell_buffer/contacts.rs11
-rw-r--r--packages/svgbob/src/buffer/cell_buffer/span.rs10
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer.rs7
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment.rs12
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment/circle.rs11
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment/line.rs11
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment/polygon.rs3
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment/rect.rs6
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment/text.rs6
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment_span.rs9
-rw-r--r--packages/svgbob/src/buffer/fragment_buffer/fragment_tree.rs9
13 files changed, 52 insertions, 65 deletions
diff --git a/packages/svgbob/src/buffer/cell_buffer.rs b/packages/svgbob/src/buffer/cell_buffer.rs
index 9cedd39..d632132 100644
--- a/packages/svgbob/src/buffer/cell_buffer.rs
+++ b/packages/svgbob/src/buffer/cell_buffer.rs
@@ -1,10 +1,11 @@
-use crate::buffer::fragment_buffer::FragmentSpan;
-use crate::fragment::CellText;
-use crate::Merge;
-use crate::Settings;
use crate::{
- buffer::{fragment_buffer::FragmentTree, Fragment, StringBuffer},
+ buffer::{
+ fragment_buffer::{FragmentSpan, FragmentTree},
+ Fragment, StringBuffer,
+ },
+ fragment::CellText,
util::parser,
+ Merge, Settings,
};
pub use cell::{Cell, CellGrid};
pub use contacts::Contacts;
diff --git a/packages/svgbob/src/buffer/cell_buffer/cell.rs b/packages/svgbob/src/buffer/cell_buffer/cell.rs
index 11388f7..faf07b9 100644
--- a/packages/svgbob/src/buffer/cell_buffer/cell.rs
+++ b/packages/svgbob/src/buffer/cell_buffer/cell.rs
@@ -1,13 +1,16 @@
use crate::{util, Point};
-use parry2d::query::PointQuery;
use parry2d::{
bounding_volume::AABB,
math::Isometry,
- query::intersection_test,
+ query::{intersection_test, PointQuery},
shape::{Polyline, Segment},
};
-use std::ops::{Add, Sub};
-use std::{cmp, cmp::Ordering, fmt};
+use std::{
+ cmp,
+ cmp::Ordering,
+ fmt,
+ ops::{Add, Sub},
+};
mod cell_grid;
diff --git a/packages/svgbob/src/buffer/cell_buffer/contacts.rs b/packages/svgbob/src/buffer/cell_buffer/contacts.rs
index 02147d7..41a7e28 100644
--- a/packages/svgbob/src/buffer/cell_buffer/contacts.rs
+++ b/packages/svgbob/src/buffer/cell_buffer/contacts.rs
@@ -1,9 +1,8 @@
-use super::endorse;
-use super::endorse::Endorse;
-use crate::buffer::fragment_buffer::FragmentSpan;
-use crate::buffer::Span;
-use crate::buffer::{fragment::Fragment, Cell};
-use crate::Merge;
+use super::{endorse, endorse::Endorse};
+use crate::{
+ buffer::{fragment::Fragment, fragment_buffer::FragmentSpan, Cell, Span},
+ Merge,
+};
use std::fmt;
/// Contains a group of fragments that are touching each other
diff --git a/packages/svgbob/src/buffer/cell_buffer/span.rs b/packages/svgbob/src/buffer/cell_buffer/span.rs
index b584a9f..39a8299 100644
--- a/packages/svgbob/src/buffer/cell_buffer/span.rs
+++ b/packages/svgbob/src/buffer/cell_buffer/span.rs
@@ -1,12 +1,11 @@
-use crate::buffer::cell_buffer::Endorse;
-use crate::buffer::fragment_buffer::FragmentSpan;
-use crate::fragment::Circle;
use crate::{
buffer::{
- cell_buffer::Contacts, FragmentBuffer, Property, PropertyBuffer,
- StringBuffer,
+ cell_buffer::{Contacts, Endorse},
+ fragment_buffer::FragmentSpan,
+ FragmentBuffer, Property, PropertyBuffer, StringBuffer,
},
fragment,
+ fragment::Circle,
map::{circle_map, UNICODE_FRAGMENTS},
Cell, Fragment, Merge, Point, Settings,
};
@@ -278,6 +277,7 @@ impl Bounds {
pub fn top_right(&self) -> Cell {
Cell::new(self.bottom_right.x, self.top_left.y)
}
+
pub fn bottom_left(&self) -> Cell {
Cell::new(self.top_left.x, self.bottom_right.y)
}
diff --git a/packages/svgbob/src/buffer/fragment_buffer.rs b/packages/svgbob/src/buffer/fragment_buffer.rs
index d590f56..dcffafe 100644
--- a/packages/svgbob/src/buffer/fragment_buffer.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer.rs
@@ -1,15 +1,12 @@
-use crate::buffer::Span;
-use crate::Cell;
-use crate::Merge;
-use crate::Settings;
+use crate::{buffer::Span, Cell, Merge, Settings};
pub use direction::Direction;
pub use fragment::Fragment;
pub use fragment_span::FragmentSpan;
pub use fragment_tree::FragmentTree;
use itertools::Itertools;
-use std::fmt::Write;
use std::{
collections::BTreeMap,
+ fmt::Write,
ops::{Deref, DerefMut},
};
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment.rs
index f30fc6c..aa041ab 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment.rs
@@ -1,18 +1,14 @@
-use crate::Merge;
-use crate::{buffer::Cell, map::unicode_map::FRAGMENTS_UNICODE, Point};
+use crate::{buffer::Cell, map::unicode_map::FRAGMENTS_UNICODE, Merge, Point};
pub use crate::{Property, Settings, Signal};
pub use arc::Arc;
pub use circle::Circle;
pub use line::Line;
pub use marker_line::{Marker, MarkerLine};
-use parry2d::bounding_volume::BoundingVolume;
-use parry2d::query::PointQuery;
-use parry2d::shape::ConvexPolygon;
use parry2d::{
- bounding_volume::AABB,
+ bounding_volume::{BoundingVolume, AABB},
math::Isometry,
- query::intersection_test,
- shape::{Polyline, Segment, Shape},
+ query::{intersection_test, PointQuery},
+ shape::{ConvexPolygon, Polyline, Segment, Shape},
};
pub use polygon::{Polygon, PolygonTag};
pub use rect::Rect;
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment/circle.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment/circle.rs
index 83b767e..f8c64ca 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment/circle.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment/circle.rs
@@ -1,9 +1,11 @@
use crate::{fragment::Bounds, util, Cell, Point};
use nalgebra::Point2;
-use parry2d::shape::ConvexPolygon;
-use parry2d::shape::Polyline;
-use std::hash::{Hash, Hasher};
-use std::{cmp::Ordering, fmt};
+use parry2d::shape::{ConvexPolygon, Polyline};
+use std::{
+ cmp::Ordering,
+ fmt,
+ hash::{Hash, Hasher},
+};
use sauron::{
html::attributes::*,
@@ -39,6 +41,7 @@ impl Circle {
fn top_left_bound(&self) -> Point {
Point::new(self.center.x - self.radius, self.center.y - self.radius)
}
+
fn top_right_bound(&self) -> Point {
Point::new(self.center.x + self.radius, self.center.y - self.radius)
}
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment/line.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment/line.rs
index c049d6a..48e6fc2 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment/line.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment/line.rs
@@ -3,11 +3,11 @@ use crate::{
fragment::{marker_line, Bounds, Circle, Marker, MarkerLine},
util, Direction, Point,
};
-use parry2d::query::PointQuery;
-use parry2d::{bounding_volume::AABB, shape::Polyline};
use parry2d::{
+ bounding_volume::AABB,
math::Isometry,
- shape::{Segment, Shape},
+ query::PointQuery,
+ shape::{Polyline, Segment, Shape},
};
use std::{cmp::Ordering, fmt};
@@ -441,8 +441,9 @@ impl PartialEq for Line {
#[cfg(test)]
mod tests {
use super::*;
- use crate::buffer::fragment_buffer::fragment::polygon::PolygonTag;
- use crate::buffer::CellGrid;
+ use crate::buffer::{
+ fragment_buffer::fragment::polygon::PolygonTag, CellGrid,
+ };
#[test]
fn test_extend_line() {
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment/polygon.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment/polygon.rs
index 3516b9c..701a24e 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment/polygon.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment/polygon.rs
@@ -1,7 +1,6 @@
-use crate::Direction;
use crate::{
fragment::{marker_line::Marker, Bounds},
- Cell, Point,
+ Cell, Direction, Point,
};
use nalgebra::Point2;
use parry2d::shape::{shape::Shape, Polyline};
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment/rect.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment/rect.rs
index c325c2e..7bbc18d 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment/rect.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment/rect.rs
@@ -1,13 +1,11 @@
use crate::{fragment::Bounds, util, Cell, Point};
-use parry2d::shape::ConvexPolygon;
-use parry2d::shape::{Polyline, Segment, Shape};
+use parry2d::shape::{ConvexPolygon, Polyline, Segment, Shape};
use sauron::{
html::attributes::*,
svg::{attributes::*, *},
Node,
};
-use std::cmp::Ordering;
-use std::fmt;
+use std::{cmp::Ordering, fmt};
#[derive(Debug, Clone)]
pub struct Rect {
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment/text.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment/text.rs
index 6a61e5d..0859407 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment/text.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment/text.rs
@@ -1,9 +1,7 @@
-use crate::buffer::Span;
-use crate::FragmentSpan;
use crate::{
- buffer::{Cell, CellGrid},
+ buffer::{Cell, CellGrid, Span},
fragment::Bounds,
- Point,
+ FragmentSpan, Point,
};
use sauron::{html::*, svg, svg::attributes::*, Node};
use std::{borrow::Cow, cmp::Ordering, fmt};
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment_span.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment_span.rs
index c28fa75..0db3f13 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment_span.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment_span.rs
@@ -1,10 +1,5 @@
-use crate::buffer::Span;
-use crate::Cell;
-use crate::Fragment;
-use crate::Merge;
-use crate::Settings;
-use std::cmp::Ordering;
-use std::fmt;
+use crate::{buffer::Span, Cell, Fragment, Merge, Settings};
+use std::{cmp::Ordering, fmt};
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct FragmentSpan {
diff --git a/packages/svgbob/src/buffer/fragment_buffer/fragment_tree.rs b/packages/svgbob/src/buffer/fragment_buffer/fragment_tree.rs
index e713325..cb162ce 100644
--- a/packages/svgbob/src/buffer/fragment_buffer/fragment_tree.rs
+++ b/packages/svgbob/src/buffer/fragment_buffer/fragment_tree.rs
@@ -1,5 +1,4 @@
-use crate::buffer::fragment_buffer::FragmentSpan;
-use crate::Fragment;
+use crate::{buffer::fragment_buffer::FragmentSpan, Fragment};
use sauron::{html::attributes::*, Node};
/// A tree of fragments where a fragment can contain other fragments
@@ -67,10 +66,8 @@ impl FragmentTree {
}
pub(crate) fn enclose_fragments(fragments: Vec<FragmentSpan>) -> Vec<Self> {
- let fragment_trees: Vec<Self> = fragments
- .into_iter()
- .map(FragmentTree::new)
- .collect();
+ let fragment_trees: Vec<Self> =
+ fragments.into_iter().map(FragmentTree::new).collect();
Self::enclose_recursive(fragment_trees)
}