summaryrefslogtreecommitdiffstats
path: root/virtual/src/element.rs
diff options
context:
space:
mode:
Diffstat (limited to 'virtual/src/element.rs')
-rw-r--r--virtual/src/element.rs37
1 files changed, 0 insertions, 37 deletions
diff --git a/virtual/src/element.rs b/virtual/src/element.rs
deleted file mode 100644
index ecdb0677..00000000
--- a/virtual/src/element.rs
+++ /dev/null
@@ -1,37 +0,0 @@
-use crate::Widget;
-
-pub struct Element<Message, Renderer> {
- widget: Box<dyn Descriptor<Message, Renderer>>,
-}
-
-impl<Message, Renderer> Element<Message, Renderer> {
- pub fn new(widget: impl Descriptor<Message, Renderer> + 'static) -> Self {
- Self {
- widget: Box::new(widget),
- }
- }
-}
-
-pub trait Descriptor<Message, Renderer> {
- fn tag(&self) -> std::any::TypeId;
-
- fn build(&self) -> Box<dyn Widget<Message, Renderer>>;
-
- fn children(&self) -> &[Element<Message, Renderer>];
-
- fn clone(&self) -> Box<dyn Descriptor<Message, Renderer>>;
-}
-
-impl<Message, Renderer> Clone for Box<dyn Descriptor<Message, Renderer>> {
- fn clone(&self) -> Self {
- self.as_ref().clone()
- }
-}
-
-impl<Message, Renderer> Clone for Element<Message, Renderer> {
- fn clone(&self) -> Self {
- Element {
- widget: self.widget.clone(),
- }
- }
-}