diff --git a/crates/fj-kernel/src/objects/mod.rs b/crates/fj-kernel/src/objects/mod.rs index 8f43d1cb9..903a2ae77 100644 --- a/crates/fj-kernel/src/objects/mod.rs +++ b/crates/fj-kernel/src/objects/mod.rs @@ -83,8 +83,6 @@ mod solid; mod surface; mod vertex; -use crate::storage::Store; - pub use self::{ curve::{Curve, GlobalCurve}, cycle::Cycle, @@ -97,6 +95,8 @@ pub use self::{ vertex::{GlobalVertex, SurfaceVertex, Vertex}, }; +use crate::storage::{Handle, Store}; + /// The available object stores /// /// # Implementation Note @@ -117,7 +117,7 @@ pub struct Objects { pub global_vertices: Store, /// Store for surfaces - pub surfaces: Store, + pub surfaces: Surfaces, } impl Objects { @@ -126,3 +126,16 @@ impl Objects { Self::default() } } + +/// The store for [`Surface`]s +#[derive(Debug, Default)] +pub struct Surfaces { + store: Store, +} + +impl Surfaces { + /// Insert a surface into the store + pub fn insert(&self, surface: Surface) -> Handle { + self.store.insert(surface) + } +}