Diffstat (limited to 'src/build/builders/core/enum.rs')
-rw-r--r--src/build/builders/core/enum.rs11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/build/builders/core/enum.rs b/src/build/builders/core/enum.rs
index 4e29bc4..a2bcb3b 100644
--- a/src/build/builders/core/enum.rs
+++ b/src/build/builders/core/enum.rs
@@ -3,6 +3,7 @@ use core::fmt::{Debug, Display};
use crate::any::{OwnedStatic, TempBorrowedStatic, TempBorrowedStaticHrt};
use crate::effect::{EffectExt, Effective, EffectiveExt};
use crate::protocol::visitor::{DynRecoverableScope, Recoverable, RecoverableProto};
+use crate::protocol::AsVisitor;
use crate::{
any::{AnyTraitObject, TypeName, TypeNameId},
any_trait,
@@ -106,8 +107,16 @@ where
Inner::Value(value) => E::ready(value),
}
}
+}
- fn as_visitor(&mut self) -> DynVisitor<'_, 'ctx> {
+impl<'ctx, Info, Mode, E: Effect> AsVisitor<'ctx> for EnumBuilder<'ctx, Info, Mode, E>
+where
+ Info: EnumBuildInfo<'ctx, Mode, E>,
+{
+ fn as_visitor<'a>(&'a mut self) -> DynVisitor<'a, 'ctx>
+ where
+ 'ctx: 'a,
+ {
DynVisitor(self)
}
}