Пример #1
0
 private static IEnumerable <string> GetInstanceDescriptions(PythonAnalyzer state, IEnumerable <IPythonType> type)
 {
     foreach (var t in type)
     {
         var av   = state.GetAnalysisValueFromObjects(t);
         var inst = av?.GetInstanceType();
         if (inst.IsUnknown())
         {
             yield return(t.Name);
         }
         else
         {
             foreach (var d in inst.GetShortDescriptions())
             {
                 yield return(d);
             }
         }
     }
 }
Пример #2
0
        internal BuiltinFunctionOverloadResult(PythonAnalyzer state, string name, IPythonFunctionOverload overload, int removedParams, Func <string> fallbackDoc, params ParameterResult[] extraParams)
            : base(null, name, null, null)
        {
            _fallbackDoc     = fallbackDoc;
            _overload        = overload;
            _extraParameters = extraParams;
            _removedParams   = removedParams;
            _projectState    = state;

            if (!overload.ReturnType.Any())
            {
                _returnTypes = Array.Empty <string>();
            }
            else
            {
                _returnTypes = overload.ReturnType.Select(t => state.GetAnalysisValueFromObjects(t)?.ShortDescription ?? t.Name).OrderBy(n => n).Distinct().ToArray();
            }

            Calculate();
        }