|
|
@@ -20,7 +20,9 @@ template <Constraint E> struct TypedVisitor : VisitorBase {
|
|
|
};
|
|
|
|
|
|
template <Constraint E, typename CRTP> struct TypedVisitorImpl : TypedVisitor<E> {
|
|
|
- Status visit(E const & cons) const final { static_cast<CRTP const *>(this)->dispatch(cons); }
|
|
|
+ Status visit(E const & cons) const final {
|
|
|
+ return static_cast<CRTP const *>(this)->dispatch(cons);
|
|
|
+ }
|
|
|
};
|
|
|
}
|
|
|
|
|
|
@@ -42,7 +44,7 @@ private:
|
|
|
|
|
|
template <Constraint E> Status dispatch(E const & cons) const {
|
|
|
// static_assert(Visitable<CRTP, E, A, V>, "Must implement all visitation functions");
|
|
|
- static_cast<CRTP const *>(self_)->visit(cons, document_, visitor_);
|
|
|
+ return static_cast<CRTP const *>(self_)->visit(cons, document_, visitor_);
|
|
|
}
|
|
|
|
|
|
private:
|