private async Task InitializeAsync( string root, IServiceManager sm, string typeshedPath, ImmutableArray <string> userConfiguredPaths, CancellationToken cancellationToken ) { cancellationToken.ThrowIfCancellationRequested(); sm.AddService(this); _moduleResolution = new MainModuleResolution(root, sm, userConfiguredPaths); _stubResolution = new TypeshedResolution(typeshedPath, sm); await _stubResolution.ReloadAsync(cancellationToken); await _moduleResolution.ReloadAsync(cancellationToken); }
private async Task LoadBuiltinTypesAsync(string root, IServiceManager sm, CancellationToken cancellationToken = default) { cancellationToken.ThrowIfCancellationRequested(); sm.AddService(this); _moduleResolution = new MainModuleResolution(root, sm); lock (_lock) { var builtinModule = _moduleResolution.CreateBuiltinsModule(); _builtinTypes[BuiltinTypeId.NoneType] = new PythonType("NoneType", builtinModule, string.Empty, LocationInfo.Empty, BuiltinTypeId.NoneType); _builtinTypes[BuiltinTypeId.Unknown] = UnknownType = new PythonType("Unknown", builtinModule, string.Empty, LocationInfo.Empty); } await _moduleResolution.InitializeAsync(cancellationToken); _stubResolution = new TypeshedResolution(sm); await _stubResolution.InitializeAsync(cancellationToken); await _moduleResolution.LoadBuiltinTypesAsync(cancellationToken); }