Having the Schema directly implement the Checker trait is not a reasonable partition of functionality. The Schema itself should be a plain object holding the database's data, and a wrapping type, such as ExprChecker should instead handle the validation process.
Having the
Schema
directly implement theChecker
trait is not a reasonable partition of functionality. TheSchema
itself should be a plain object holding the database's data, and a wrapping type, such asExprChecker
should instead handle the validation process.