public abstract void DownloadToolErrorCopyFile()

in Public/Src/FrontEnd/Core/Tracing/Log.cs [469:1021]


        public abstract void DownloadToolErrorCopyFile(
            LoggingContext loggingContext,
            string toolName,
            string url,
            string targetFilePath,
            string message);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolFailedDueToCacheError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Tool '{toolName}' will be downloaded again because there was a failure initializing the cache: {message}")]
        public abstract void DownloadToolFailedDueToCacheError(LoggingContext loggingContext, string toolName, string message);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolIsUpToDate,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Tool '{toolName}' is up to date and will not be downloaded because file '{targetFilePath}' has the expected hash '{hash}'.")]
        public abstract void DownloadToolIsUpToDate(LoggingContext loggingContext, string toolName, string targetFilePath, string hash);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolIsRetrievedFromCache,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message =
                "Tool '{toolName}' is restored from cache and will not be downloaded because file '{targetFilePath}' has the expected hash '{hash}'.")
        ]
        public abstract void DownloadToolIsRetrievedFromCache(LoggingContext loggingContext, string toolName, string targetFilePath, string hash);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolErrorDownloading,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)(Keywords.UserMessage | Keywords.InfrastructureError),
            EventTask = (ushort)Tasks.Parser,
            Message = "Tool '{toolName}' failed to download from url: '{url}' to target location '{targetFilePath}' with error: {message}")]
        public abstract void DownloadToolErrorDownloading(
            LoggingContext loggingContext,
            string toolName,
            string url,
            string targetFilePath,
            string message);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolErrorFileNotDownloaded,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)(Keywords.UserMessage | Keywords.InfrastructureError),
            EventTask = (ushort)Tasks.Parser,
            Message = "Tool '{toolName}' failed to download. No file was produced at target location '{targetFilePath}'")]
        public abstract void DownloadToolErrorFileNotDownloaded(LoggingContext loggingContext, string toolName, string targetFilePath);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolErrorDownloadedToolWrongHash,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)(Keywords.UserMessage | Keywords.InfrastructureError),
            EventTask = (ushort)Tasks.Parser,
            Message =
                "Tool '{toolName}' failed to validate. The configuration specified required hash '{expectedHash}', but the file '{targetFilePath}' downloaded from '{url}' has hash '{actualHash}'. For safety reasons we will not continue the build. You must update the config and/or validate the that the server providing the file is not compromised.")]
        public abstract void DownloadToolErrorDownloadedToolWrongHash(
            LoggingContext loggingContext,
            string toolName,
            string targetFilePath,
            string url,
            string expectedHash,
            string actualHash);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolCannotCache,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Tool '{toolName}' failed to store file '{targetFilePath}' successfully in the cache with hash '{contentHash}': {message}")]
        public abstract void DownloadToolCannotCache(
            LoggingContext loggingContext,
            string toolName,
            string targetFilePath,
            string url,
            string contentHash,
            string message);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadToolWarnCouldntHashDownloadedFile,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Informational,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Tool '{toolName}' will be downloaded again in a future because there was an error hasing file '{targetFilePath}': {message}")]
        public abstract void DownloadToolWarnCouldntHashDownloadedFile(
            LoggingContext loggingContext,
            string toolName,
            string targetFilePath,
            string message);

        [GeneratedEvent(
            (ushort)LogEventId.StartRetrievingPackage,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)(Keywords.Diagnostics),
            EventTask = (ushort)Tasks.Parser,
            EventOpcode = (byte)EventOpcode.Start,
            Message = "-- Checking if package '{friendlyPackageName}' is cached or needs to be downloaded from '{targetLocation}'")]
        internal abstract void StartRetrievingPackage(LoggingContext loggingContext, string friendlyPackageName, string targetLocation);

        [GeneratedEvent(
            (ushort)LogEventId.EndRetrievingPackage,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)(Keywords.Diagnostics),
            EventTask = (ushort)Tasks.Parser,
            EventOpcode = (byte)EventOpcode.Stop,
            Message = "-- Done retrieving package {friendlyPackageName}.")]
        internal abstract void EndRetrievingPackage(LoggingContext loggingContext, string friendlyPackageName);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadPackageFailedDueToCacheError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package '{friendlyPackageName}' will be downloaded again because there was a failure initializing the cache: {message}")]
        public abstract void DownloadPackageFailedDueToCacheError(LoggingContext loggingContext, string friendlyPackageName, string message);

        [GeneratedEvent(
            (ushort)LogEventId.CanNotRestorePackagesDueToCacheError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)(Keywords.UserMessage | Keywords.InfrastructureError),
            EventTask = (ushort)Tasks.Parser,
            Message = "Can't restore NuGet packages because there was a failure initializing the cache: {message}")]
        public abstract void CanNotRestorePackagesDueToCacheError(LoggingContext loggingContext, string message);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadPackageFailedDueToInvalidCacheContents,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Warning,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package '{friendlyPackageName}' will be downloaded again because there was an invalid entry in the cache.{additionalInfo}")]
        public abstract void DownloadPackageFailedDueToInvalidCacheContents(LoggingContext loggingContext, string friendlyPackageName, string? additionalInfo = null);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadPackageCannotCacheError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message =
                "Package '{friendlyPackageName}' failed to store file '{targetLocation}' successfully in the cache with hash '{contentHash}': {message}. This is an error when /forcePopulatePackageCache is enabled.")]
        public abstract void DownloadPackageCannotCacheError(
            LoggingContext loggingContext,
            string friendlyPackageName,
            string targetLocation,
            string contentHash,
            string message);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadPackageCannotCacheWarning,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Warning,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message =
                "Package '{friendlyPackageName}' failed to store file '{targetLocation}' successfully in the cache with hash '{contentHash}': {message}")]
        public abstract void DownloadPackageCannotCacheWarning(
            LoggingContext loggingContext,
            string friendlyPackageName,
            string targetLocation,
            string contentHash,
            string message);

        [GeneratedEvent(
            (ushort)LogEventId.DownloadPackageCouldntHashPackageFile,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package '{friendlyPackageName}' failed to be stored in the cache because file '{targetLocation}' couldn't be hashed: {message}")]
        public abstract void DownloadPackageCouldntHashPackageFile(
            LoggingContext loggingContext,
            string friendlyPackageName,
            string targetLocation,
            string message);

        [GeneratedEvent(
            (ushort)LogEventId.PackageRestoredFromCache,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package {package} has been restored from the cache.")]
        public abstract void PackageRestoredFromCache(LoggingContext context, string package);

        [GeneratedEvent(
            (ushort)LogEventId.PackagePresumedUpToDate,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package {package} was presumed up to date on disk because of fingerprints match.")]
        public abstract void PackagePresumedUpToDate(LoggingContext context, string package);

        [GeneratedEvent(
            (ushort)LogEventId.PackagePresumedUpToDateWithoutHashComparison,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package {package} was presumed up to date on disk without comparing the fingerprints.")]
        public abstract void PackagePresumedUpToDateWithoutHashComparison(LoggingContext context, string package);

        [GeneratedEvent(
            (ushort)LogEventId.CanNotReusePackageHashFile,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package hash file '{file}' can't be reused. {message}")]
        public abstract void CanNotReusePackageHashFile(LoggingContext context, string file, string message);

        [GeneratedEvent(
            (ushort)LogEventId.CanNotUpdatePackageHashFile,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Failed to update a package hash file '{file}'. {message}")]
        public abstract void CanNotUpdatePackageHashFile(LoggingContext context, string file, string message);

        [GeneratedEvent(
            (ushort)LogEventId.PackageNotFoundInCacheAndStartedDownloading,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package nuget://{id}/{version} was not found in the cache and started downloading.")]
        public abstract void PackageNotFoundInCacheAndStartedDownloading(LoggingContext context, string id, string version);

        [GeneratedEvent(
            (ushort)LogEventId.PackageNotFoundInCacheAndDownloaded,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package nuget://{id}/{version} finished downloading. \r\n{packageHash}\r\n{packageFingerprint}")]
        public abstract void PackageNotFoundInCacheAndDownloaded(LoggingContext context, string id, string version, string packageHash, string packageFingerprint);

        [GeneratedEvent(
            (ushort)LogEventId.PackageCacheMissInformation,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            Keywords = (int)Keywords.UserMessage,
            EventTask = (ushort)Tasks.Parser,
            Message = "Package nuget://{id}/{version} was not the same as the previous version: \r\nOriginal\r\n{originalFingerprint}\r\nNew\r\n{newFingerprint}")]
        public abstract void PackageCacheMissInformation(LoggingContext context, string id, string version, string originalFingerprint, string newFingerprint);

        [GeneratedEvent(
            (ushort)LogEventId.CannotBuildWorkspace,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            EventTask = (ushort)Tasks.Parser,
            Message = "{message}",
            Keywords = (int)(Keywords.UserMessage | Keywords.UserError))]
        public abstract void CannotBuildWorkspace(LoggingContext context, string message);

        [GeneratedEvent(
            (ushort)LogEventId.CheckerError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            EventTask = (ushort)Tasks.Parser,
            Keywords = (int)(Keywords.UserMessage | Keywords.UserError),
            Message = EventConstants.LabeledProvenancePrefix + "{error}")]
        public abstract void CheckerError(LoggingContext context, Location location, string error);

        [GeneratedEvent(
            (ushort)LogEventId.CheckerGlobalError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            EventTask = (ushort)Tasks.Parser,
            Keywords = (int)Keywords.UserMessage,
            Message = "{error}")]
        public abstract void CheckerGlobalError(LoggingContext context, string error);

        [GeneratedEvent(
            (ushort)LogEventId.CheckerWarning,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Warning,
            EventTask = (ushort)Tasks.Parser,
            Keywords = (int)Keywords.UserMessage,
            Message = EventConstants.LabeledProvenancePrefix + "{message}")]
        public abstract void CheckerWarning(LoggingContext context, Location location, string message);

        [GeneratedEvent(
            (ushort)LogEventId.CheckerGlobalWarning,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Warning,
            EventTask = (ushort)Tasks.Parser,
            Keywords = (int)Keywords.UserMessage,
            Message = "{message}")]
        public abstract void CheckerGlobalWarning(LoggingContext context, string message);

        /// <summary>
        /// Generic typescript syntax error. All TS parser errors are routed here
        /// </summary>
        [GeneratedEvent(
            (ushort)LogEventId.TypeScriptSyntaxError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            EventTask = (ushort)Tasks.Parser,
            Message = EventConstants.LabeledProvenancePrefix + "{message}",
            Keywords = (int)(Keywords.UserMessage | Keywords.UserError))]
        public abstract void SyntaxError(LoggingContext context, Location location, string message);

        [GeneratedEvent(
            (ushort)LogEventId.TypeScriptLocalBindingError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            EventTask = (ushort)Tasks.Parser,
            Message = EventConstants.LabeledProvenancePrefix + "{message}",
            Keywords = (int)(Keywords.UserMessage | Keywords.UserError))]
        public abstract void LocalBindingError(LoggingContext context, Location location, string message);

        [GeneratedEvent(
            (ushort)LogEventId.MaterializingFileToFileDepdencyMap,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.LogAlways,
            EventTask = (ushort)Tasks.HostApplication,
            Message = EventConstants.PhasePrefix + "Writing spec-to-spec dependency map to '{destination}'.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void MaterializingFileToFileDepdencyMap(LoggingContext context, string destination);

        [GeneratedEvent(
            (ushort)LogEventId.ErrorMaterializingFileToFileDepdencyMap,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.LogAlways,
            EventTask = (ushort)Tasks.HostApplication,
            Message = EventConstants.PhasePrefix + "Spec-to-spec dependency map could not be written. Error code {errorCode:X8}: {message}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void ErrorMaterializingFileToFileDepdencyMap(LoggingContext context, int errorCode, string message);

        [GeneratedEvent(
            (ushort)LogEventId.GraphPartiallyReloaded,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Informational,
            EventTask = (ushort)Tasks.Parser,
            Message = "Pip graph partially reloaded in {elapsedMillis}ms: #affected/total specs = {numAffectedSpecs}/{numTotalSpecs}, #reloaded pips = {numReloaded} + {numAutoAdded}, #skipped pips = {numSkipped} + {numNotReloadable}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void GraphPartiallyReloaded(LoggingContext context, int numAffectedSpecs, int numTotalSpecs, int elapsedMillis, int numReloaded, int numAutoAdded, int numSkipped, int numNotReloadable);

        [GeneratedEvent(
            (ushort)LogEventId.GraphPatchingDetails,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "Graph patching details: {details}",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void GraphPatchingDetails(LoggingContext context, string details);

        [GeneratedEvent(
            (ushort)LogEventId.SaveFrontEndSnapshot,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "FrontEnd snapshot was saved to {path} in {duration}ms.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void SaveFrontEndSnapshot(LoggingContext context, string path, int duration);

        [GeneratedEvent(
            (ushort)LogEventId.LoadFrontEndSnapshot,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Loaded the front end snapshot for {specCount} specs in {duration}ms.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void LoadFrontEndSnapshot(LoggingContext context, int specCount, int duration);

        [GeneratedEvent(
            (ushort)LogEventId.SaveFrontEndSnapshotError,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Warning,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "FrontEnd snapshot could not be written to {path}: {message}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void SaveFrontEndSnapshotError(LoggingContext context, string path, string message);

        [GeneratedEvent(
            (ushort)LogEventId.FailToReuseFrontEndSnapshot,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Failed to reuse front end cache: {reason}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void FailToReuseFrontEndSnapshot(LoggingContext context, string reason);

        [GeneratedEvent(
            (ushort)LogEventId.FailedToFilterWorkspaceDefinition,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Failed to filter workspace definition: {reason}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void FailedToFilterWorkspaceDefinition(LoggingContext context, string reason);

        [GeneratedEvent(
            (ushort)LogEventId.TryingToReuseFrontEndSnapshot,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Trying to reuse a front-end snapshot...",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void TryingToReuseFrontEndSnapshot(LoggingContext context);

        [GeneratedEvent(
            (ushort)LogEventId.BuildingFullWorkspace,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Building the full workspace...",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void BuildingFullWorkspace(LoggingContext context);

        [GeneratedEvent(
            (ushort)LogEventId.WorkspaceDefinitionCreated,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Built workspace definition with {moduleCount} modules, {specCount} specs and {configSpecCount} configuration specs in {duration}ms.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void WorkspaceDefinitionCreated(LoggingContext context, int moduleCount, int specCount, int configSpecCount, int duration);

        [GeneratedEvent(
            (ushort)LogEventId.WorkspaceDefinitionFiltered,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Applied user-defined filter based on reused spec-2-spec information in {duration}ms. Remaining spec count: {filteredCount}. Original spec count: {originalCount}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void WorkspaceDefinitionFiltered(LoggingContext context, int filteredCount, int originalCount, int duration);

        [GeneratedEvent(
            (ushort)LogEventId.WorkspaceDefinitionFilteredBasedOnModuleFilter,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Applied user-defined module filter in {duration}ms. Filtered out {moduleCount} modules with {specCount} specs. Original module count: {originalCount}. Final module count: {filteredCount}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void WorkspaceDefinitionFilteredBasedOnModuleFilter(LoggingContext context, int moduleCount, int specCount, int originalCount, int filteredCount, int duration);

        [GeneratedEvent(
            (ushort)LogEventId.WorkspaceFiltered,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.HostApplication,
            Message = "Applied user-defined filter based on spec-2-spec information in {duration}ms. Remaining spec count: {filteredCount}. Original spec count: {originalCount}.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void WorkspaceFiltered(LoggingContext context, int filteredCount, int originalCount, int duration);

        [GeneratedEvent(
            (ushort)LogEventId.CycleDetectionStatistics,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "  cycle detection: {0} threads created, {1} chains added, {2} removed before processing, {3} abandoned while processing, {4} removed after processing.",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void CycleDetectionStatistics(LoggingContext context, long threadsCreated, long chainsAdded, long chainsRemovedBeforeProcessing, long chainsAbandonedWhileProcessing, long chainsRemovedAfterProcessing);

        [GeneratedEvent(
            (ushort)LogEventId.SlowestScriptElements,
            EventGenerators = EventGenerators.LocalAndTelemetry,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "Slowest {ShortScriptName} elements by phase:\r\n    Parse:{parse}\r\n    Bind:{bind}\r\n    Type check:{typeCheck}\r\n    AST Conversion:{astConversion}\r\n    Facade computation:{facadeComputation}\r\n    Compute Fingerprint:{computeFingerprint}\r\n    Evaluation:{evaluation}\r\n    Prelude Processing:{preludeProcessing}",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void SlowestScriptElements(LoggingContext context, string parse, string bind, string typeCheck, string astConversion, string facadeComputation, string computeFingerprint, string evaluation, string preludeProcessing);

        [GeneratedEvent(
            (ushort)LogEventId.LargestScriptFiles,
            EventGenerators = EventGenerators.LocalAndTelemetry,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "Largest {ShortScriptName} files:\r\n    By #identifiers:{byIdentifierCount}\r\n    By #lines:{byLineCount}\r\n    By #chars:{byCharCount}\r\n    By #nodes:{byNodeCount}\r\n    By #symbols:{bySymbolCount}",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void LargestScriptFiles(LoggingContext context, string byIdentifierCount, string byLineCount, string byCharCount, string byNodeCount, string bySymbolCount);

        [GeneratedEvent(
            (ushort)LogEventId.ScriptFilesReloadedWithNoWarningsOrErrors,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            EventTask = (ushort)Tasks.Parser,
            Message = "{reloadedSpecCount} spec(s) were reloaded during {ShortProductName} invocation but no error or warning was logged. This behavior could drasitcally compromise system's performance and should be fixed. Stack trace that triggered file reloading: \r\n{stackTrace}",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void ScriptFilesReloadedWithNoWarningsOrErrors(LoggingContext context, int reloadedSpecCount, string stackTrace);

        [GeneratedEvent(
            (ushort)LogEventId.ReportDestructionCone,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "Destruction cone (changed/affected/required/all specs): {numChanged}/{numAffected}/{numRequired}/{numAll}",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void ReportDestructionCone(LoggingContext context, int numChanged, int numAffected, int numRequired, int numAll);
        
        [GeneratedEvent(
            (ushort)LogEventId.FrontEndWorkspaceMemoryCollectionSkipped,
            EventGenerators = EventGenerators.LocalAndTelemetry,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "Workspace memory collection skipped. {message}",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void FrontEndWorkspaceMemoryCollectionSkipped(LoggingContext context, string message);
        
        [GeneratedEvent(
            (ushort)LogEventId.FrontEndWorkspaceMemoryCollectedSuccessfully,
            EventGenerators = EventGenerators.LocalAndTelemetry,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "Workspace memory collected successfully",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void FrontEndWorkspaceMemoryCollectedSuccessfully(LoggingContext context);
        
        [GeneratedEvent(
            (ushort)LogEventId.FrontEndWorkspaceMemoryNotCollected,
            EventGenerators = EventGenerators.LocalAndTelemetry,
            EventLevel = Level.Verbose,
            EventTask = (ushort)Tasks.Parser,
            Message = "Workspace memory was not collected successfully. This indicates a memory leak that drastically increase memory footprint during evaluation phase",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void FrontEndWorkspaceMemoryNotCollected(LoggingContext context);

        [GeneratedEvent(
            (ushort)LogEventId.FrontEndFailedReadPublicFacade,
            EventGenerators = EventGenerators.LocalOnly,
            EventLevel = Level.Error,
            EventTask = (ushort)Tasks.Parser,
            Message = "Failed to read public facade: {message}",
            Keywords = (int)Keywords.UserMessage)]
        public abstract void FrontEndFailedReadPublicFacade(LoggingContext context, string message);
    }

    /// <summary>
    /// Empty struct for functions that have no arguments
    /// </summary>
    public readonly struct EmptyStruct
    {