Если у меня есть имя типа (например, «контейнер/вектор»), есть ли способ поиска отражения. Тип, который имеет данное имя? Я пытаюсь написать простую базу данных с поддержкой базы данных, и это будет очень сложно без этой функции.Получение отражения. Тип от имени
ответ
Я не вижу, как это было бы возможно любым тривиальным способом (или вообще), поскольку разрешение имен является частью компилятора/компоновщика, а не среды выполнения.
Однако http://github.com/nsf/gocode может предложить некоторые идеи. Хотя я уверен, что работает, обрабатывая файлы .a в $ GOROOT, поэтому я до сих пор не вижу, как вы получите отражение. Тип. Может быть, если пакет exp/eval был более зрелым?
Конечно, если вы знаете все возможные типы, с которыми вы столкнетесь, вы всегда можете составить карту отражения. Тип. Но я предполагаю, что вы работаете с непредсказуемым вкладом, или вы бы подумали об этом.
Только способ создания reflect.Type
имеет конкретное значение для предполагаемого типа. Вы даже не можете создавать композитные типы, такие как срез ([]T
), из базового типа (T
).
Единственный способ перейти от string
к reflect.Type
- это ввести картографию самостоятельно.
mapping := map[string]reflect.Type {
"string": reflect.Typeof(""),
"container/vector": reflect.Typeof(new(vector.Vector)),
/* ... */
}
- 1. получение имени пользователя от имени компьютерной сети
- 2. Получение имени модуля от имени модели
- 3. Получить Тип сборки по имени файла без использования отражения
- 4. Scala отражения разрешить общие черты от имени во время выполнения
- 5. Django: получение формы от имени
- 6. Получение доменного имени от URl
- 7. Получение имени контроллера от бритвы
- 8. Получение полного имени от пользователя
- 9. Получение полного имени от Facebook от UIViewController
- 10. Hashcode от отражения?
- 11. Получить тип с использованием отражения
- 12. тип собственности или класс с использованием отражения
- 13. Получить тип от сборочной нагрузки с использованием отражения
- 14. Получить тип от имени класса в Scala
- 15. Вызывать свойство или тип от имени
- 16. C++ Тип указателя, отлитого от имени класса
- 17. Javascript InstanceOf получить тип от имени строки
- 18. Получение описания значения enum без использования отражения
- 19. Конфигурации отражения от контейнера
- 20. Отражения от DTO
- 21. Получение имени параметра в java?
- 22. Получение значения свойства с помощью отражения
- 23. Получение методов webservice от клиента Soap с использованием отражения
- 24. Получение типов свойств списка с использованием отражения
- 25. Получение идентификатора вида от его имени
- 26. Applescript: Получение номера недели от имени файла
- 27. Получение порядкового номера от имени функции программно
- 28. Facebook App: Получение имени пользователя от ID
- 29. Получение последней фотографии от имени сервера
- 30. Получение имени, пол, расположение «меня» от GoogleApiClient