aboutsummaryrefslogtreecommitdiff
path: root/src/melf.rs
diff options
context:
space:
mode:
authorCharlotte Pabst <charlotte.pabst@stud.tu-darmstadt.de>2024-03-25 02:25:43 +0100
committerCharlotte Pabst <charlotte.pabst@stud.tu-darmstadt.de>2024-03-25 02:25:43 +0100
commit4cc4f8d5e07a4aa85ac52ce3205574e37ffdf780 (patch)
tree4a4a6c864e25ab8df5f6547b490428b23c6c5d14 /src/melf.rs
parent1f92f06d21289019ca8a955b9162da66d98badfe (diff)
downloaddcel-4cc4f8d5e07a4aa85ac52ce3205574e37ffdf780.tar.xz
generational references & documentation
Diffstat (limited to 'src/melf.rs')
-rw-r--r--src/melf.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/melf.rs b/src/melf.rs
index 2b8df3f..0fd818a 100644
--- a/src/melf.rs
+++ b/src/melf.rs
@@ -2,6 +2,9 @@ use crate::*;
// Make Edge-Vertex
+/// Operator corresponding to MEL in SNUMOD.
+///
+/// See [`Dcel::melf`] for details.
pub struct Melf<'brand, 'arena, V> {
pub vertices: [ptr!(Vertex); 2],
pub loop_: ptr!(Loop),
@@ -13,6 +16,7 @@ impl<'brand, 'arena, V> Melf<'brand, 'arena, V> {
}
}
+/// Precondition Error for [`Melf`].
#[derive(Debug, Error)]
pub enum MelfError {
#[error("vertex is not part of loop")]
@@ -88,12 +92,16 @@ impl<'brand, 'arena, V> Operator<'brand, 'arena, V> for Melf<'brand, 'arena, V>
}
}
+/// Operator corresponding to KEL in SNUMOD.
+///
+/// See [`Dcel::kelf`] for details.
pub struct Kelf<'brand, 'arena, V> {
pub edge: own!(Edge),
pub loop_: own!(Loop),
pub face: own!(Face),
}
+/// Precondition Error for [`Kelf`].
impl<'brand, 'arena, V> Kelf<'brand, 'arena, V> {
pub fn new(edge: own!(Edge), loop_: own!(Loop), face: own!(Face)) -> Self {
Self { edge, loop_, face }