Получить тип возврата предлагаемой функции в джедае
Я пытаюсь улучшить способ отображения завершений Python с помощью YouCompleteMe (который использует Jedi). В настоящее время он просто показывает завершение и "полный путь":
capitalize function: __builtin__.str.capitalize
center function: __builtin__.str.center
count function: __builtin__.str.count
В идеале я хотел бы, чтобы он показывал сигнатуру и предполагаемый тип возврата для функций (как у вас с дополнениями C/C++).
Есть ли способ получить из объекта jedi.api.classes.Completion (который представляет функцию) к типу возврата этой функции?
Джедай где-то хранит эту информацию, так как если вы вызываете эту функцию и выполняете ее, obj.function().|
он знает какой тип function
возвращается и предлагает правильные дополнения.
1 ответ
В настоящее время нет такого API. Такой API определенно был бы возможен, но учтите, что иногда эти типы различаются в зависимости от ваших параметров (это не Java).
Просто добавьте вопрос на Github, чтобы обсудить это: https://github.com/davidhalter/jedi/issues
Это не большая вещь для реализации, это гораздо больше о том, как выглядит API.