public GetModuleAnnotations ( VBComponent component ) : IEnumerable |
||
component | VBComponent | |
return | IEnumerable |
private void ResolveDeclarations(VBComponent component, IParseTree tree) { if (component == null) { return; } var qualifiedModuleName = new QualifiedModuleName(component); try { var project = component.Collection.Parent; var projectQualifiedName = new QualifiedModuleName(project); Declaration projectDeclaration; if (!_projectDeclarations.TryGetValue(projectQualifiedName.ProjectId, out projectDeclaration)) { projectDeclaration = CreateProjectDeclaration(projectQualifiedName, project); _projectDeclarations.Add(projectQualifiedName.ProjectId, projectDeclaration); lock (_state) { _state.AddDeclaration(projectDeclaration); } } Logger.Debug("Creating declarations for module {0}.", qualifiedModuleName.Name); var declarationsListener = new DeclarationSymbolsListener(qualifiedModuleName, component.Type, _state.GetModuleComments(component), _state.GetModuleAnnotations(component), _state.GetModuleAttributes(component), _projectReferences, projectDeclaration); ParseTreeWalker.Default.Walk(declarationsListener, tree); foreach (var createdDeclaration in declarationsListener.CreatedDeclarations) { _state.AddDeclaration(createdDeclaration); } } catch (Exception exception) { Logger.Error(exception, "Exception thrown acquiring declarations for '{0}' (thread {1}).", component.Name, Thread.CurrentThread.ManagedThreadId); lock (_state) { _state.SetModuleState(component, ParserState.ResolverError); } } }
protected void ResolveDeclarations(QualifiedModuleName module, IParseTree tree, CancellationToken token) { var stopwatch = Stopwatch.StartNew(); try { var projectDeclaration = GetOrCreateProjectDeclaration(module); Logger.Debug("Creating declarations for module {0}.", module.Name); var declarationsListener = new DeclarationSymbolsListener(_state, module, _state.GetModuleAnnotations(module), _state.GetModuleAttributes(module), projectDeclaration); ParseTreeWalker.Default.Walk(declarationsListener, tree); foreach (var createdDeclaration in declarationsListener.CreatedDeclarations) { _state.AddDeclaration(createdDeclaration); } } catch (Exception exception) { Logger.Error(exception, "Exception thrown acquiring declarations for '{0}' (thread {1}).", module.Name, Thread.CurrentThread.ManagedThreadId); _parserStateManager.SetModuleState(module, ParserState.ResolverError, token); } stopwatch.Stop(); Logger.Debug("{0}ms to resolve declarations for component {1}", stopwatch.ElapsedMilliseconds, module.Name); }