ibc-rs
ibc-rs copied to clipboard
Separate `Module` in `ModuleValidation` and `ModuleExecution`
Module
should be split into 2 different traits:
-
ModuleValidation
which contains all*_validate()
methods -
ModuleExecution
which contains all*_execute()
methods
Modifications to Router
:
-
Router::get_route_validation() -> Option<&dyn ModuleValidation>
- previously
Router::get_route()
- previously
-
Router::get_route_execution() -> Option<&dyn ModuleExecution>
- previously
Router::get_route_mut
- previously
-
Router::has_route()
split inhas_route_validation()
andhas_route_execution()
- we should provide default implementations for these too based on
get_route_*()
- we should provide default implementations for these too based on