protected override void DoRun()

in Backend/Core/ForTea.Core/Daemon/ProblemAnalyzers/T4UnresolvedPathAnalyzer.cs [29:43]


    protected override void DoRun(IT4AttributeValue element, IHighlightingConsumer consumer)
    {
      var attribute = DirectiveAttributeNavigator.GetByValue(element);
      if (!(DirectiveNavigator.GetByAttribute(attribute) is IT4AssemblyDirective assemblyDirective)) return;
      var path = AssemblyReferenceResolver.Resolve(assemblyDirective);
      if (path != null)
      {
        if (ProjectReferenceResolver.TryResolveProject(path) != null) return;
        if (path.ExistsFile) return;
      }

      var pathNode = assemblyDirective.GetAttributeValueToken(T4DirectiveInfoManager.Assembly.NameAttribute.Name);
      if (pathNode == null) return;
      consumer.AddHighlighting(new UnresolvedAssemblyError(pathNode));
    }