А если у меня не просто энкодер, а целый набор сторонних функций, которые внутри вызывают encode и я хочу переопределить этот endoce для конкретной эликсировской структуры
Никто, конечно не мешает передавать модуль в каком-нибудь поле мапы, а потом апплаить функции по этому модулю, но тогда будет не очень понятно как поступать с дефолтными структурами типа списков, тупплов и всего такого