я сделать аргумент по дефолту nil?
arg ... interface{}
Нет, в Go нет аргументов по умолчанию. Можно использовать аргумент-структуру или функции, меняющие поведение
Вот так не надо делать в общем случае :)
https://habr.com/ru/post/344352/
fmt так уже сделано
Это один конкретный случай, тк нужно печатать что угодно
Пакет fmt — не общий случай
Вы сравните количество такого кода в стандартной библиотеке с кодом с конкретными типами :)
А как звучит полный кейс? В go, наверное, самое простое это передавать структуру где уже аргументы - это поля заполннные, имхо
functional options?
передать его через контекст :)))
Не слушайте это предложение :)
закрывайте глаза, ты хотел сказать :)
Обсуждают сегодня