def hint_pep0484(pyname): from rope.base.oi.soi import _get_lineno_for_node lineno = _get_lineno_for_node(pyname.assignments[0].ast_node) holding_scope = pyname.module.get_scope().get_inner_scope_for_line(lineno) line = holding_scope._get_global_scope()._scope_finder.lines.get_line(lineno) if '#' in line: type_strs = _search_type_in_pep0484(line.split('#', 1)[1]) if type_strs: return _resolve_type(type_strs[0], holding_scope.pyobject)
def __call__(self, pyname): """ :type pyname: rope.base.pynamesdef.AssignedName :rtype: rope.base.pyobjects.PyDefinedObject | rope.base.pyobjects.PyObject or None """ from rope.base.oi.soi import _get_lineno_for_node lineno = _get_lineno_for_node(pyname.assignments[0].ast_node) holding_scope = pyname.module.get_scope().get_inner_scope_for_line(lineno) line = holding_scope._get_global_scope()._scope_finder.lines.get_line(lineno) if '#' in line: type_strs = self._search_type_in_type_comment(line.split('#', 1)[1]) if type_strs: return self._resolve(type_strs[0], holding_scope.pyobject)
def __call__(self, pyname): """ :type pyname: rope.base.pynamesdef.AssignedName :rtype: rope.base.pyobjects.PyDefinedObject | rope.base.pyobjects.PyObject or None """ from rope.base.oi.soi import _get_lineno_for_node lineno = _get_lineno_for_node(pyname.assignments[0].ast_node) holding_scope = pyname.module.get_scope().get_inner_scope_for_line( lineno) line = holding_scope._get_global_scope()._scope_finder.lines.get_line( lineno) if '#' in line: type_strs = self._search_type_in_type_comment( line.split('#', 1)[1]) if type_strs: return self._resolve(type_strs[0], holding_scope.pyobject)