Что делает шаблон Aux в Scala?
У меня есть ощущение шаблона Aux (который используется в бесформенном и в других местах), в котором член типа извлекается в параметр типа, и я знаю, что это обходной путь, когда аргументы в одном и том же списке аргументов не могут зависеть друг на друга - но я не совсем понимаю, для чего он используется и какие проблемы он решает.
Например, в настоящее время я пытаюсь выяснить, как сохранить и работать с более конкретным типом, возвращаемым макросом whitebox - это вариант использования для Aux?
Есть ли простое описание?