А в расте это можно выразить, наверное, через доп. трейт с ассоциативным типом указывающим не результат. Определение будет вербознее, конечно.
попробуй, не уверен что выйдет. У самого энума не получится указать Output. ЧТо-то похожее моно на трейтах сделать да, но у трейтов открытое множество реализаций, может не получиться сделать exaustive