Evite usar aserciones de tipo en las ramas de un interruptor de tipo
Yo uso interruptores de tipo en Go, p. el siguiente:
switch question.(type) {
case interfaces.ComputedQuestion:
handleComputedQuestion(question.(interfaces.ComputedQuestion), symbols)
case interfaces.InputQuestion:
handleInputQuestion(question.(interfaces.InputQuestion), symbols)
}
¿Hay alguna manera de evitar que tenga que hacer valer el tipo de pregunta dentro del caso antes de poder pasarla a otra función?