// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. namespace WixToolset.Extensibility { using WixToolset.Data; #if BRING_BACK_LATER /// /// Base class for creating a decompiler extension. /// public abstract class DecompilerExtension : IDecompilerExtension { /// /// Gets or sets the decompiler core for the extension. /// /// The decompiler core for the extension. public IDecompilerCore Core { get; set; } /// /// Gets the table definitions this extension decompiles. /// /// Table definitions this extension decompiles. public virtual TableDefinitionCollection TableDefinitions { get; protected set; } /// /// Gets the library that this decompiler wants removed from the decomipiled output. /// /// The table definitions to use while loading the library. /// The library for this extension or null if there is no library to be removed. public virtual Library GetLibraryToRemove(TableDefinitionCollection tableDefinitions) { return null; } /// /// Called at the beginning of the decompilation of a database. /// /// The collection of all tables. public virtual void Initialize(TableIndexedCollection tables) { } /// /// Decompiles an extension table. /// /// The table to decompile. public virtual void DecompileTable(Table table) { this.Core.UnexpectedTable(table); } /// /// Finalize decompilation. /// /// The collection of all tables. public virtual void Finish(TableIndexedCollection tables) { } } #endif }