Microsoft.DocAsCode.Build.Engine.SingleDocumentBuilder.IsProcessorSupportIncremental C# (CSharp) Method

IsProcessorSupportIncremental() private method

private IsProcessorSupportIncremental ( IDocumentProcessor processor ) : bool
processor IDocumentProcessor
return bool
        private bool IsProcessorSupportIncremental(IDocumentProcessor processor)
        {
            if (!ShouldTraceIncrementalInfo)
            {
                return false;
            }
            if (!(processor is ISupportIncrementalDocumentProcessor))
            {
                Logger.LogVerbose($"Processor {processor.Name} cannot suppport incremental build because the processor doesn't implement {nameof(ISupportIncrementalDocumentProcessor)} interface.");
                return false;
            }
            if (!processor.BuildSteps.All(step => step is ISupportIncrementalBuildStep))
            {
                Logger.LogVerbose($"Processor {processor.Name} cannot suppport incremental build because the following steps don't implement {nameof(ISupportIncrementalBuildStep)} interface: {string.Join(",", processor.BuildSteps.Where(step => !(step is ISupportIncrementalBuildStep)).Select(s => s.Name))}.");
                return false;
            }
            return true;
        }