Идентификация функции в Go
Как я могу проверить идентификатор функции в Go?
Предположим, что-то вроде этого:
myCallback := func() { /* Do something */ }
someObject.Callback = myCallback;
// Then sometime later..
/* Has my callback been changed? */
if someObject.Callback != myCallback {
log.Fatal("Someone changed my callback and didn't ask my permission!\n")
}
Конечно, этот конкретный код не работает. Жалуется что func can only be compared to nil
,
Так есть ли другой способ сделать сравнение функций, чтобы увидеть, являются ли две функции (или ссылки на функции - это то, что есть в Go?) Одинаковыми?