aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2020-12-18 22:04:48 -0600
committerSean Hall <r.sean.hall@gmail.com>2020-12-18 23:58:30 -0600
commit0e71bdd637a6b3c34f18d4b3630d55fa4cdfd2a3 (patch)
tree697466ea42c21f6d996cf324eb191f2182300697 /src/WixToolset.Core
parent4e9b8c43ec5870d6aee75a95acd8a0de4ff4c1db (diff)
downloadwix-0e71bdd637a6b3c34f18d4b3630d55fa4cdfd2a3.tar.gz
wix-0e71bdd637a6b3c34f18d4b3630d55fa4cdfd2a3.tar.bz2
wix-0e71bdd637a6b3c34f18d4b3630d55fa4cdfd2a3.zip
Enable XML doc.
Diffstat (limited to 'src/WixToolset.Core')
-rw-r--r--src/WixToolset.Core/Bind/ExtractEmbeddedFilesCommand.cs1
-rw-r--r--src/WixToolset.Core/Bind/FileFacade.cs1
-rw-r--r--src/WixToolset.Core/Bind/FileResolver.cs2
-rw-r--r--src/WixToolset.Core/Bind/ResolveDelayedFieldsCommand.cs2
-rw-r--r--src/WixToolset.Core/CommandLine/CommandLineParser.cs1
-rw-r--r--src/WixToolset.Core/Common.cs37
-rw-r--r--src/WixToolset.Core/Compiler.cs10
-rw-r--r--src/WixToolset.Core/CompilerCore.cs10
-rw-r--r--src/WixToolset.Core/Compiler_2.cs8
-rw-r--r--src/WixToolset.Core/Compiler_Bundle.cs35
-rw-r--r--src/WixToolset.Core/Compiler_EmbeddedUI.cs1
-rw-r--r--src/WixToolset.Core/Compiler_Patch.cs4
-rw-r--r--src/WixToolset.Core/Compiler_UI.cs3
-rw-r--r--src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs32
-rw-r--r--src/WixToolset.Core/ExtensibilityServices/Uuid.cs1
-rw-r--r--src/WixToolset.Core/IBinder.cs2
-rw-r--r--src/WixToolset.Core/ICompiler.cs4
-rw-r--r--src/WixToolset.Core/IDecompiler.cs2
-rw-r--r--src/WixToolset.Core/ILayoutCreator.cs4
-rw-r--r--src/WixToolset.Core/ILibrarian.cs4
-rw-r--r--src/WixToolset.Core/ILinker.cs3
-rw-r--r--src/WixToolset.Core/IPreprocessor.cs1
-rw-r--r--src/WixToolset.Core/IResolver.cs2
-rw-r--r--src/WixToolset.Core/Inscriber.cs8
-rw-r--r--src/WixToolset.Core/LayoutCreator.cs6
-rw-r--r--src/WixToolset.Core/Link/SymbolWithSection.cs1
-rw-r--r--src/WixToolset.Core/Link/WixComplexReferenceSymbolExtensions.cs6
-rw-r--r--src/WixToolset.Core/Link/WixGroupingOrdering.cs6
-rw-r--r--src/WixToolset.Core/Linker.cs2
-rw-r--r--src/WixToolset.Core/LocalizationParser.cs5
-rw-r--r--src/WixToolset.Core/PatchSymbolFlagsType.cs31
-rw-r--r--src/WixToolset.Core/Preprocess/IfDefEventHandler.cs4
-rw-r--r--src/WixToolset.Core/Preprocess/IncludedFileEventHandler.cs6
-rw-r--r--src/WixToolset.Core/Preprocess/ProcessedStreamEventHandler.cs6
-rw-r--r--src/WixToolset.Core/Preprocess/ResolvedVariableEventHandler.cs4
-rw-r--r--src/WixToolset.Core/PreprocessResult.cs2
-rw-r--r--src/WixToolset.Core/Preprocessor.cs30
-rw-r--r--src/WixToolset.Core/ResolveFileResult.cs2
-rw-r--r--src/WixToolset.Core/WixToolset.Core.csproj2
-rw-r--r--src/WixToolset.Core/WixToolsetServiceProviderFactory.cs7
40 files changed, 195 insertions, 103 deletions
diff --git a/src/WixToolset.Core/Bind/ExtractEmbeddedFilesCommand.cs b/src/WixToolset.Core/Bind/ExtractEmbeddedFilesCommand.cs
index bb9ab844..29fba6b2 100644
--- a/src/WixToolset.Core/Bind/ExtractEmbeddedFilesCommand.cs
+++ b/src/WixToolset.Core/Bind/ExtractEmbeddedFilesCommand.cs
@@ -9,6 +9,7 @@ namespace WixToolset.Core.Bind
9 using WixToolset.Extensibility.Data; 9 using WixToolset.Extensibility.Data;
10 using WixToolset.Extensibility.Services; 10 using WixToolset.Extensibility.Services;
11 11
12#pragma warning disable 1591 // TODO: this shouldn't be public, need interface in Extensibility
12 public class ExtractEmbeddedFilesCommand 13 public class ExtractEmbeddedFilesCommand
13 { 14 {
14 public ExtractEmbeddedFilesCommand(IBackendHelper backendHelper, IEnumerable<IExpectedExtractFile> embeddedFiles) 15 public ExtractEmbeddedFilesCommand(IBackendHelper backendHelper, IEnumerable<IExpectedExtractFile> embeddedFiles)
diff --git a/src/WixToolset.Core/Bind/FileFacade.cs b/src/WixToolset.Core/Bind/FileFacade.cs
index 075d3d34..ec4e9725 100644
--- a/src/WixToolset.Core/Bind/FileFacade.cs
+++ b/src/WixToolset.Core/Bind/FileFacade.cs
@@ -9,6 +9,7 @@ namespace WixToolset.Core.Bind
9 using WixToolset.Data.WindowsInstaller; 9 using WixToolset.Data.WindowsInstaller;
10 using WixToolset.Data.WindowsInstaller.Rows; 10 using WixToolset.Data.WindowsInstaller.Rows;
11 11
12#pragma warning disable 1591 // TODO: this shouldn't be public, need interface in Extensibility
12 public class FileFacade 13 public class FileFacade
13 { 14 {
14 public FileFacade(FileSymbol file, AssemblySymbol assembly) 15 public FileFacade(FileSymbol file, AssemblySymbol assembly)
diff --git a/src/WixToolset.Core/Bind/FileResolver.cs b/src/WixToolset.Core/Bind/FileResolver.cs
index ba71c6c9..eb878239 100644
--- a/src/WixToolset.Core/Bind/FileResolver.cs
+++ b/src/WixToolset.Core/Bind/FileResolver.cs
@@ -67,7 +67,7 @@ namespace WixToolset.Core.Bind
67 /// Resolves the source path of a file using binder extensions. 67 /// Resolves the source path of a file using binder extensions.
68 /// </summary> 68 /// </summary>
69 /// <param name="source">Original source value.</param> 69 /// <param name="source">Original source value.</param>
70 /// <param name="type">Optional type of source file being resolved.</param> 70 /// <param name="symbolDefinition">Optional type of source file being resolved.</param>
71 /// <param name="sourceLineNumbers">Optional source line of source file being resolved.</param> 71 /// <param name="sourceLineNumbers">Optional source line of source file being resolved.</param>
72 /// <param name="bindStage">The binding stage used to determine what collection of bind paths will be used</param> 72 /// <param name="bindStage">The binding stage used to determine what collection of bind paths will be used</param>
73 /// <param name="alreadyCheckedPaths">Optional collection of paths already checked.</param> 73 /// <param name="alreadyCheckedPaths">Optional collection of paths already checked.</param>
diff --git a/src/WixToolset.Core/Bind/ResolveDelayedFieldsCommand.cs b/src/WixToolset.Core/Bind/ResolveDelayedFieldsCommand.cs
index ebabed47..14b6d011 100644
--- a/src/WixToolset.Core/Bind/ResolveDelayedFieldsCommand.cs
+++ b/src/WixToolset.Core/Bind/ResolveDelayedFieldsCommand.cs
@@ -10,6 +10,7 @@ namespace WixToolset.Core.Bind
10 using WixToolset.Extensibility.Data; 10 using WixToolset.Extensibility.Data;
11 using WixToolset.Extensibility.Services; 11 using WixToolset.Extensibility.Services;
12 12
13#pragma warning disable 1591 // TODO: this shouldn't be public, need interface in Extensibility
13 /// <summary> 14 /// <summary>
14 /// Resolves the fields which had variables that needed to be resolved after the file information 15 /// Resolves the fields which had variables that needed to be resolved after the file information
15 /// was loaded. 16 /// was loaded.
@@ -19,6 +20,7 @@ namespace WixToolset.Core.Bind
19 /// <summary> 20 /// <summary>
20 /// Resolve delayed fields. 21 /// Resolve delayed fields.
21 /// </summary> 22 /// </summary>
23 /// <param name="messaging"></param>
22 /// <param name="delayedFields">The fields which had resolution delayed.</param> 24 /// <param name="delayedFields">The fields which had resolution delayed.</param>
23 /// <param name="variableCache">The file information to use when resolving variables.</param> 25 /// <param name="variableCache">The file information to use when resolving variables.</param>
24 public ResolveDelayedFieldsCommand(IMessaging messaging, IEnumerable<IDelayedField> delayedFields, Dictionary<string, string> variableCache) 26 public ResolveDelayedFieldsCommand(IMessaging messaging, IEnumerable<IDelayedField> delayedFields, Dictionary<string, string> variableCache)
diff --git a/src/WixToolset.Core/CommandLine/CommandLineParser.cs b/src/WixToolset.Core/CommandLine/CommandLineParser.cs
index 2ee1e9ae..1438d820 100644
--- a/src/WixToolset.Core/CommandLine/CommandLineParser.cs
+++ b/src/WixToolset.Core/CommandLine/CommandLineParser.cs
@@ -192,7 +192,6 @@ namespace WixToolset.Core.CommandLine
192 /// or DirectoryInfo.GetFiles. The only way to get this directory path is manually since 192 /// or DirectoryInfo.GetFiles. The only way to get this directory path is manually since
193 /// Path.GetDirectoryName does not support ".." in the path. 193 /// Path.GetDirectoryName does not support ".." in the path.
194 /// </remarks> 194 /// </remarks>
195 /// <exception cref="WixFileNotFoundException">Throws WixFileNotFoundException if no file matching the pattern can be found.</exception>
196 private string[] GetFiles(string searchPath, string fileType) 195 private string[] GetFiles(string searchPath, string fileType)
197 { 196 {
198 if (null == searchPath) 197 if (null == searchPath)
diff --git a/src/WixToolset.Core/Common.cs b/src/WixToolset.Core/Common.cs
index 1bb895be..79f06135 100644
--- a/src/WixToolset.Core/Common.cs
+++ b/src/WixToolset.Core/Common.cs
@@ -21,9 +21,21 @@ namespace WixToolset.Core
21 public static class Common 21 public static class Common
22 { 22 {
23 // TODO: Find a place to put all of these so they doesn't have to be public and exposed by WixToolset.Core.dll 23 // TODO: Find a place to put all of these so they doesn't have to be public and exposed by WixToolset.Core.dll
24 /// <summary>
25 ///
26 /// </summary>
24 public const string UpgradeDetectedProperty = "WIX_UPGRADE_DETECTED"; 27 public const string UpgradeDetectedProperty = "WIX_UPGRADE_DETECTED";
28 /// <summary>
29 ///
30 /// </summary>
25 public const string UpgradePreventedCondition = "NOT WIX_UPGRADE_DETECTED"; 31 public const string UpgradePreventedCondition = "NOT WIX_UPGRADE_DETECTED";
32 /// <summary>
33 ///
34 /// </summary>
26 public const string DowngradeDetectedProperty = "WIX_DOWNGRADE_DETECTED"; 35 public const string DowngradeDetectedProperty = "WIX_DOWNGRADE_DETECTED";
36 /// <summary>
37 ///
38 /// </summary>
27 public const string DowngradePreventedCondition = "NOT WIX_DOWNGRADE_DETECTED"; 39 public const string DowngradePreventedCondition = "NOT WIX_DOWNGRADE_DETECTED";
28 40
29 //------------------------------------------------------------------------------------------------- 41 //-------------------------------------------------------------------------------------------------
@@ -51,6 +63,9 @@ namespace WixToolset.Core
51 // GENERIC_WRITE (0x40000000L) 63 // GENERIC_WRITE (0x40000000L)
52 // GENERIC_READ (0x80000000L) 64 // GENERIC_READ (0x80000000L)
53 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll 65 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll
66 /// <summary>
67 ///
68 /// </summary>
54 public static readonly string[] GenericPermissions = { "GenericAll", "GenericExecute", "GenericWrite", "GenericRead" }; 69 public static readonly string[] GenericPermissions = { "GenericAll", "GenericExecute", "GenericWrite", "GenericRead" };
55 70
56 // Standard Access Rights (per WinNT.h) 71 // Standard Access Rights (per WinNT.h)
@@ -61,6 +76,9 @@ namespace WixToolset.Core
61 // WRITE_OWNER (0x00080000L) 76 // WRITE_OWNER (0x00080000L)
62 // SYNCHRONIZE (0x00100000L) 77 // SYNCHRONIZE (0x00100000L)
63 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll 78 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll
79 /// <summary>
80 ///
81 /// </summary>
64 public static readonly string[] StandardPermissions = { "Delete", "ReadPermission", "ChangePermission", "TakeOwnership", "Synchronize" }; 82 public static readonly string[] StandardPermissions = { "Delete", "ReadPermission", "ChangePermission", "TakeOwnership", "Synchronize" };
65 83
66 // Object-Specific Access Rights 84 // Object-Specific Access Rights
@@ -77,11 +95,17 @@ namespace WixToolset.Core
77 // FILE_READ_ATTRIBUTES ( 0x0080 ) 95 // FILE_READ_ATTRIBUTES ( 0x0080 )
78 // FILE_WRITE_ATTRIBUTES ( 0x0100 ) 96 // FILE_WRITE_ATTRIBUTES ( 0x0100 )
79 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll 97 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll
98 /// <summary>
99 ///
100 /// </summary>
80 public static readonly string[] FolderPermissions = { "Read", "CreateFile", "CreateChild", "ReadExtendedAttributes", "WriteExtendedAttributes", "Traverse", "DeleteChild", "ReadAttributes", "WriteAttributes" }; 101 public static readonly string[] FolderPermissions = { "Read", "CreateFile", "CreateChild", "ReadExtendedAttributes", "WriteExtendedAttributes", "Traverse", "DeleteChild", "ReadAttributes", "WriteAttributes" };
81 102
82 // Registry Access Rights (per TODO) 103 // Registry Access Rights (per TODO)
83 // ---------------------- 104 // ----------------------
84 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll 105 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll
106 /// <summary>
107 ///
108 /// </summary>
85 public static readonly string[] RegistryPermissions = { "Read", "Write", "CreateSubkeys", "EnumerateSubkeys", "Notify", "CreateLink" }; 109 public static readonly string[] RegistryPermissions = { "Read", "Write", "CreateSubkeys", "EnumerateSubkeys", "Notify", "CreateLink" };
86 110
87 // File Access Rights (per WinNT.h) 111 // File Access Rights (per WinNT.h)
@@ -99,6 +123,9 @@ namespace WixToolset.Core
99 // STANDARD_RIGHTS_REQUIRED (0x000F0000L) 123 // STANDARD_RIGHTS_REQUIRED (0x000F0000L)
100 // FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF) 124 // FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF)
101 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll 125 // TODO: Find a place to put this that it doesn't have to be public and exposed by WixToolset.Core.dll
126 /// <summary>
127 ///
128 /// </summary>
102 public static readonly string[] FilePermissions = { "Read", "Write", "Append", "ReadExtendedAttributes", "WriteExtendedAttributes", "Execute", "FileAllRights", "ReadAttributes", "WriteAttributes" }; 129 public static readonly string[] FilePermissions = { "Read", "Write", "Append", "ReadExtendedAttributes", "WriteExtendedAttributes", "Execute", "FileAllRights", "ReadAttributes", "WriteAttributes" };
103 130
104 internal static readonly char[] IllegalLongFilenameCharacters = new[] { '\\', '/', '?', '*', '|', '>', '<', ':', '\"' }; // illegal: \ / ? | > < : / * " 131 internal static readonly char[] IllegalLongFilenameCharacters = new[] { '\\', '/', '?', '*', '|', '>', '<', ':', '\"' }; // illegal: \ / ? | > < : / * "
@@ -596,10 +623,10 @@ namespace WixToolset.Core
596 /// <summary> 623 /// <summary>
597 /// Get an attribute value. 624 /// Get an attribute value.
598 /// </summary> 625 /// </summary>
626 /// <param name="messaging"></param>
599 /// <param name="sourceLineNumbers">Source line information about the owner element.</param> 627 /// <param name="sourceLineNumbers">Source line information about the owner element.</param>
600 /// <param name="attribute">The attribute containing the value to get.</param> 628 /// <param name="attribute">The attribute containing the value to get.</param>
601 /// <param name="emptyRule">A rule for the contents of the value. If the contents do not follow the rule, an error is thrown.</param> 629 /// <param name="emptyRule">A rule for the contents of the value. If the contents do not follow the rule, an error is thrown.</param>
602 /// <param name="messageHandler">A delegate that receives error messages.</param>
603 /// <returns>The attribute's value.</returns> 630 /// <returns>The attribute's value.</returns>
604 internal static string GetAttributeValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute, EmptyRule emptyRule) 631 internal static string GetAttributeValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute, EmptyRule emptyRule)
605 { 632 {
@@ -641,9 +668,9 @@ namespace WixToolset.Core
641 /// <summary> 668 /// <summary>
642 /// Get an identifier attribute value and displays an error for an illegal identifier value. 669 /// Get an identifier attribute value and displays an error for an illegal identifier value.
643 /// </summary> 670 /// </summary>
671 /// <param name="messaging"></param>
644 /// <param name="sourceLineNumbers">Source line information about the owner element.</param> 672 /// <param name="sourceLineNumbers">Source line information about the owner element.</param>
645 /// <param name="attribute">The attribute containing the value to get.</param> 673 /// <param name="attribute">The attribute containing the value to get.</param>
646 /// <param name="messageHandler">A delegate that receives error messages.</param>
647 /// <returns>The attribute's identifier value or a special value if an error occurred.</returns> 674 /// <returns>The attribute's identifier value or a special value if an error occurred.</returns>
648 internal static string GetAttributeIdentifierValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute) 675 internal static string GetAttributeIdentifierValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute)
649 { 676 {
@@ -676,11 +703,11 @@ namespace WixToolset.Core
676 /// <summary> 703 /// <summary>
677 /// Get an integer attribute value and displays an error for an illegal integer value. 704 /// Get an integer attribute value and displays an error for an illegal integer value.
678 /// </summary> 705 /// </summary>
706 /// <param name="messaging"></param>
679 /// <param name="sourceLineNumbers">Source line information about the owner element.</param> 707 /// <param name="sourceLineNumbers">Source line information about the owner element.</param>
680 /// <param name="attribute">The attribute containing the value to get.</param> 708 /// <param name="attribute">The attribute containing the value to get.</param>
681 /// <param name="minimum">The minimum legal value.</param> 709 /// <param name="minimum">The minimum legal value.</param>
682 /// <param name="maximum">The maximum legal value.</param> 710 /// <param name="maximum">The maximum legal value.</param>
683 /// <param name="messageHandler">A delegate that receives error messages.</param>
684 /// <returns>The attribute's integer value or a special value if an error occurred during conversion.</returns> 711 /// <returns>The attribute's integer value or a special value if an error occurred during conversion.</returns>
685 public static int GetAttributeIntegerValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute, int minimum, int maximum) 712 public static int GetAttributeIntegerValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute, int minimum, int maximum)
686 { 713 {
@@ -715,9 +742,9 @@ namespace WixToolset.Core
715 /// <summary> 742 /// <summary>
716 /// Gets a yes/no value and displays an error for an illegal yes/no value. 743 /// Gets a yes/no value and displays an error for an illegal yes/no value.
717 /// </summary> 744 /// </summary>
745 /// <param name="messaging"></param>
718 /// <param name="sourceLineNumbers">Source line information about the owner element.</param> 746 /// <param name="sourceLineNumbers">Source line information about the owner element.</param>
719 /// <param name="attribute">The attribute containing the value to get.</param> 747 /// <param name="attribute">The attribute containing the value to get.</param>
720 /// <param name="messageHandler">A delegate that receives error messages.</param>
721 /// <returns>The attribute's YesNoType value.</returns> 748 /// <returns>The attribute's YesNoType value.</returns>
722 internal static YesNoType GetAttributeYesNoValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute) 749 internal static YesNoType GetAttributeYesNoValue(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute)
723 { 750 {
@@ -833,6 +860,7 @@ namespace WixToolset.Core
833 /// <summary> 860 /// <summary>
834 /// Display an unexpected attribute error. 861 /// Display an unexpected attribute error.
835 /// </summary> 862 /// </summary>
863 /// <param name="messaging"></param>
836 /// <param name="sourceLineNumbers">Source line information about the owner element.</param> 864 /// <param name="sourceLineNumbers">Source line information about the owner element.</param>
837 /// <param name="attribute">The attribute.</param> 865 /// <param name="attribute">The attribute.</param>
838 public static void UnexpectedAttribute(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute) 866 public static void UnexpectedAttribute(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute attribute)
@@ -848,6 +876,7 @@ namespace WixToolset.Core
848 /// <summary> 876 /// <summary>
849 /// Display an unsupported extension attribute error. 877 /// Display an unsupported extension attribute error.
850 /// </summary> 878 /// </summary>
879 /// <param name="messaging"></param>
851 /// <param name="sourceLineNumbers">Source line information about the owner element.</param> 880 /// <param name="sourceLineNumbers">Source line information about the owner element.</param>
852 /// <param name="extensionAttribute">The extension attribute.</param> 881 /// <param name="extensionAttribute">The extension attribute.</param>
853 internal static void UnsupportedExtensionAttribute(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute extensionAttribute) 882 internal static void UnsupportedExtensionAttribute(IMessaging messaging, SourceLineNumber sourceLineNumbers, XAttribute extensionAttribute)
diff --git a/src/WixToolset.Core/Compiler.cs b/src/WixToolset.Core/Compiler.cs
index addb9750..62ea8aaf 100644
--- a/src/WixToolset.Core/Compiler.cs
+++ b/src/WixToolset.Core/Compiler.cs
@@ -886,7 +886,7 @@ namespace WixToolset.Core
886 /// Parses an instance element. 886 /// Parses an instance element.
887 /// </summary> 887 /// </summary>
888 /// <param name="node">Element to parse.</param> 888 /// <param name="node">Element to parse.</param>
889 /// <param name="componentId">Identifier of instance property.</param> 889 /// <param name="propertyId">Identifier of instance property.</param>
890 private void ParseInstanceElement(XElement node, string propertyId) 890 private void ParseInstanceElement(XElement node, string propertyId)
891 { 891 {
892 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 892 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
@@ -1641,6 +1641,7 @@ namespace WixToolset.Core
1641 /// Parses a product search element. 1641 /// Parses a product search element.
1642 /// </summary> 1642 /// </summary>
1643 /// <param name="node">Element to parse.</param> 1643 /// <param name="node">Element to parse.</param>
1644 /// <param name="propertyId"></param>
1644 /// <returns>Signature for search element.</returns> 1645 /// <returns>Signature for search element.</returns>
1645 private void ParseProductSearchElement(XElement node, string propertyId) 1646 private void ParseProductSearchElement(XElement node, string propertyId)
1646 { 1647 {
@@ -2570,6 +2571,8 @@ namespace WixToolset.Core
2570 /// Parses a component group element. 2571 /// Parses a component group element.
2571 /// </summary> 2572 /// </summary>
2572 /// <param name="node">Element to parse.</param> 2573 /// <param name="node">Element to parse.</param>
2574 /// <param name="parentType"></param>
2575 /// <param name="parentId"></param>
2573 [SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] 2576 [SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
2574 private void ParseComponentGroupElement(XElement node, ComplexReferenceParentType parentType, string parentId) 2577 private void ParseComponentGroupElement(XElement node, ComplexReferenceParentType parentType, string parentId)
2575 { 2578 {
@@ -5024,6 +5027,8 @@ namespace WixToolset.Core
5024 /// Parses a feature group element. 5027 /// Parses a feature group element.
5025 /// </summary> 5028 /// </summary>
5026 /// <param name="node">Element to parse.</param> 5029 /// <param name="node">Element to parse.</param>
5030 /// <param name="parentType"></param>
5031 /// <param name="parentId"></param>
5027 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] 5032 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
5028 private void ParseFeatureGroupElement(XElement node, ComplexReferenceParentType parentType, string parentId) 5033 private void ParseFeatureGroupElement(XElement node, ComplexReferenceParentType parentType, string parentId)
5029 { 5034 {
@@ -5477,6 +5482,7 @@ namespace WixToolset.Core
5477 /// <param name="sourcePath">Default source path of parent directory.</param> 5482 /// <param name="sourcePath">Default source path of parent directory.</param>
5478 /// <param name="possibleKeyPath">This will be set with the possible keyPath for the parent component.</param> 5483 /// <param name="possibleKeyPath">This will be set with the possible keyPath for the parent component.</param>
5479 /// <param name="win64Component">true if the component is 64-bit.</param> 5484 /// <param name="win64Component">true if the component is 64-bit.</param>
5485 /// <param name="componentGuid"></param>
5480 /// <returns>Yes if this element was marked as the parent component's key path, No if explicitly marked as not being a key path, or NotSet otherwise.</returns> 5486 /// <returns>Yes if this element was marked as the parent component's key path, No if explicitly marked as not being a key path, or NotSet otherwise.</returns>
5481 [SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] 5487 [SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
5482 private YesNoType ParseFileElement(XElement node, string componentId, string directoryId, int diskId, string sourcePath, out string possibleKeyPath, bool win64Component, string componentGuid) 5488 private YesNoType ParseFileElement(XElement node, string componentId, string directoryId, int diskId, string sourcePath, out string possibleKeyPath, bool win64Component, string componentGuid)
@@ -6934,7 +6940,7 @@ namespace WixToolset.Core
6934 /// Parses a MajorUpgrade element. 6940 /// Parses a MajorUpgrade element.
6935 /// </summary> 6941 /// </summary>
6936 /// <param name="node">The element to parse.</param> 6942 /// <param name="node">The element to parse.</param>
6937 /// <param name="parentElement">The parent element.</param> 6943 /// <param name="contextValues">The current context.</param>
6938 private void ParseMajorUpgradeElement(XElement node, IDictionary<string, string> contextValues) 6944 private void ParseMajorUpgradeElement(XElement node, IDictionary<string, string> contextValues)
6939 { 6945 {
6940 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 6946 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
diff --git a/src/WixToolset.Core/CompilerCore.cs b/src/WixToolset.Core/CompilerCore.cs
index 721eae6b..50b88e51 100644
--- a/src/WixToolset.Core/CompilerCore.cs
+++ b/src/WixToolset.Core/CompilerCore.cs
@@ -127,6 +127,8 @@ namespace WixToolset.Core
127 /// Constructor for all compiler core. 127 /// Constructor for all compiler core.
128 /// </summary> 128 /// </summary>
129 /// <param name="intermediate">The Intermediate object representing compiled source document.</param> 129 /// <param name="intermediate">The Intermediate object representing compiled source document.</param>
130 /// <param name="messaging"></param>
131 /// <param name="parseHelper"></param>
130 /// <param name="extensions">The WiX extensions collection.</param> 132 /// <param name="extensions">The WiX extensions collection.</param>
131 internal CompilerCore(Intermediate intermediate, IMessaging messaging, IParseHelper parseHelper, Dictionary<XNamespace, ICompilerExtension> extensions) 133 internal CompilerCore(Intermediate intermediate, IMessaging messaging, IParseHelper parseHelper, Dictionary<XNamespace, ICompilerExtension> extensions)
132 { 134 {
@@ -531,7 +533,7 @@ namespace WixToolset.Core
531 /// </summary> 533 /// </summary>
532 /// <param name="sourceLineNumbers">Source line information about the owner element.</param> 534 /// <param name="sourceLineNumbers">Source line information about the owner element.</param>
533 /// <param name="attribute">The attribute containing the value to get.</param> 535 /// <param name="attribute">The attribute containing the value to get.</param>
534 /// <param name="onlyAscii">Whether to allow Unicode (UCS) or UTF code pages.</param> 536 /// <param name="onlyAnsi">Whether to allow Unicode (UCS) or UTF code pages.</param>
535 /// <returns>A valid code page integer value or variable expression.</returns> 537 /// <returns>A valid code page integer value or variable expression.</returns>
536 [SuppressMessage("Microsoft.Design", "CA1059:MembersShouldNotExposeCertainConcreteTypes")] 538 [SuppressMessage("Microsoft.Design", "CA1059:MembersShouldNotExposeCertainConcreteTypes")]
537 public string GetAttributeLocalizableCodePageValue(SourceLineNumber sourceLineNumbers, XAttribute attribute, bool onlyAnsi = false) 539 public string GetAttributeLocalizableCodePageValue(SourceLineNumber sourceLineNumbers, XAttribute attribute, bool onlyAnsi = false)
@@ -892,7 +894,7 @@ namespace WixToolset.Core
892 /// <summary> 894 /// <summary>
893 /// Create an identifier based on passed file name 895 /// Create an identifier based on passed file name
894 /// </summary> 896 /// </summary>
895 /// <param name="name">File name to generate identifer from</param> 897 /// <param name="filename">File name to generate identifer from</param>
896 /// <returns></returns> 898 /// <returns></returns>
897 public Identifier CreateIdentifierFromFilename(string filename) 899 public Identifier CreateIdentifierFromFilename(string filename)
898 { 900 {
@@ -935,7 +937,7 @@ namespace WixToolset.Core
935 /// </summary> 937 /// </summary>
936 /// <param name="parentElement">Element containing element to be parsed.</param> 938 /// <param name="parentElement">Element containing element to be parsed.</param>
937 /// <param name="element">Element to be parsed.</param> 939 /// <param name="element">Element to be parsed.</param>
938 /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param> 940 /// <param name="context">Extra information about the context in which this element is being parsed.</param>
939 public IComponentKeyPath ParsePossibleKeyPathExtensionElement(XElement parentElement, XElement element, IDictionary<string, string> context) 941 public IComponentKeyPath ParsePossibleKeyPathExtensionElement(XElement parentElement, XElement element, IDictionary<string, string> context)
940 { 942 {
941 return this.parseHelper.ParsePossibleKeyPathExtensionElement(this.extensions.Values, this.intermediate, this.ActiveSection, parentElement, element, context); 943 return this.parseHelper.ParsePossibleKeyPathExtensionElement(this.extensions.Values, this.intermediate, this.ActiveSection, parentElement, element, context);
@@ -1017,6 +1019,7 @@ namespace WixToolset.Core
1017 /// <param name="id">Unique identifier for the section.</param> 1019 /// <param name="id">Unique identifier for the section.</param>
1018 /// <param name="type">Type of section to create.</param> 1020 /// <param name="type">Type of section to create.</param>
1019 /// <param name="codepage">Codepage for the resulting database for this ection.</param> 1021 /// <param name="codepage">Codepage for the resulting database for this ection.</param>
1022 /// <param name="compilationId"></param>
1020 /// <returns>New section.</returns> 1023 /// <returns>New section.</returns>
1021 internal IntermediateSection CreateActiveSection(string id, SectionType type, int codepage, string compilationId) 1024 internal IntermediateSection CreateActiveSection(string id, SectionType type, int codepage, string compilationId)
1022 { 1025 {
@@ -1034,6 +1037,7 @@ namespace WixToolset.Core
1034 /// <param name="id">Unique identifier for the section.</param> 1037 /// <param name="id">Unique identifier for the section.</param>
1035 /// <param name="type">Type of section to create.</param> 1038 /// <param name="type">Type of section to create.</param>
1036 /// <param name="codepage">Codepage for the resulting database for this ection.</param> 1039 /// <param name="codepage">Codepage for the resulting database for this ection.</param>
1040 /// <param name="compilationId"></param>
1037 /// <returns>New section.</returns> 1041 /// <returns>New section.</returns>
1038 internal IntermediateSection CreateSection(string id, SectionType type, int codepage, string compilationId) 1042 internal IntermediateSection CreateSection(string id, SectionType type, int codepage, string compilationId)
1039 { 1043 {
diff --git a/src/WixToolset.Core/Compiler_2.cs b/src/WixToolset.Core/Compiler_2.cs
index 1922a70b..6fd1b3c8 100644
--- a/src/WixToolset.Core/Compiler_2.cs
+++ b/src/WixToolset.Core/Compiler_2.cs
@@ -770,8 +770,10 @@ namespace WixToolset.Core
770 /// Parses a package element. 770 /// Parses a package element.
771 /// </summary> 771 /// </summary>
772 /// <param name="node">Element to parse.</param> 772 /// <param name="node">Element to parse.</param>
773 /// <param name="productAuthor">Default package author.</param> 773 /// <param name="isCodepageSet"></param>
774 /// <param name="moduleId">The module guid - this is necessary until Module/@Guid is removed.</param> 774 /// <param name="isPackageNameSet"></param>
775 /// <param name="isKeywordsSet"></param>
776 /// <param name="isPackageAuthorSet"></param>
775 private void ParseSummaryInformationElement(XElement node, ref bool isCodepageSet, ref bool isPackageNameSet, ref bool isKeywordsSet, ref bool isPackageAuthorSet) 777 private void ParseSummaryInformationElement(XElement node, ref bool isCodepageSet, ref bool isPackageNameSet, ref bool isKeywordsSet, ref bool isPackageAuthorSet)
776 { 778 {
777 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 779 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
@@ -3433,6 +3435,7 @@ namespace WixToolset.Core
3433 /// </summary> 3435 /// </summary>
3434 /// <param name="node">Element to parse.</param> 3436 /// <param name="node">Element to parse.</param>
3435 /// <param name="componentId">Identifier of parent component.</param> 3437 /// <param name="componentId">Identifier of parent component.</param>
3438 /// <param name="win64Component"></param>
3436 private void ParseServiceInstallElement(XElement node, string componentId, bool win64Component) 3439 private void ParseServiceInstallElement(XElement node, string componentId, bool win64Component)
3437 { 3440 {
3438 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 3441 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
@@ -4266,6 +4269,7 @@ namespace WixToolset.Core
4266 /// Parses a shortcut property element. 4269 /// Parses a shortcut property element.
4267 /// </summary> 4270 /// </summary>
4268 /// <param name="node">Element to parse.</param> 4271 /// <param name="node">Element to parse.</param>
4272 /// <param name="shortcutId"></param>
4269 private void ParseShortcutPropertyElement(XElement node, string shortcutId) 4273 private void ParseShortcutPropertyElement(XElement node, string shortcutId)
4270 { 4274 {
4271 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 4275 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
diff --git a/src/WixToolset.Core/Compiler_Bundle.cs b/src/WixToolset.Core/Compiler_Bundle.cs
index 00f88c1f..0817aef3 100644
--- a/src/WixToolset.Core/Compiler_Bundle.cs
+++ b/src/WixToolset.Core/Compiler_Bundle.cs
@@ -436,6 +436,7 @@ namespace WixToolset.Core
436 /// Parse a Container element. 436 /// Parse a Container element.
437 /// </summary> 437 /// </summary>
438 /// <param name="node">Element to parse</param> 438 /// <param name="node">Element to parse</param>
439 /// <param name="fileSystemSafeBundleName"></param>
439 private string ParseLogElement(XElement node, string fileSystemSafeBundleName) 440 private string ParseLogElement(XElement node, string fileSystemSafeBundleName)
440 { 441 {
441 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 442 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
@@ -706,6 +707,8 @@ namespace WixToolset.Core
706 /// Parse the BoostrapperApplication element. 707 /// Parse the BoostrapperApplication element.
707 /// </summary> 708 /// </summary>
708 /// <param name="node">Element to parse</param> 709 /// <param name="node">Element to parse</param>
710 /// <param name="previousType"></param>
711 /// <param name="previousId"></param>
709 private Identifier ParseBootstrapperApplicationDllElement(XElement node, ComplexReferenceChildType previousType, Identifier previousId) 712 private Identifier ParseBootstrapperApplicationDllElement(XElement node, ComplexReferenceChildType previousType, Identifier previousId)
710 { 713 {
711 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 714 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
@@ -1308,6 +1311,8 @@ namespace WixToolset.Core
1308 /// <param name="node">Element to parse</param> 1311 /// <param name="node">Element to parse</param>
1309 /// <param name="parentType">ComplexReferenceParentType of parent element. (BA or PayloadGroup)</param> 1312 /// <param name="parentType">ComplexReferenceParentType of parent element. (BA or PayloadGroup)</param>
1310 /// <param name="parentId">Identifier of parent element.</param> 1313 /// <param name="parentId">Identifier of parent element.</param>
1314 /// <param name="previousType"></param>
1315 /// <param name="previousId"></param>
1311 private Identifier ParsePayloadElement(XElement node, ComplexReferenceParentType parentType, Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId) 1316 private Identifier ParsePayloadElement(XElement node, ComplexReferenceParentType parentType, Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId)
1312 { 1317 {
1313 Debug.Assert(ComplexReferenceParentType.PayloadGroup == parentType || ComplexReferenceParentType.Package == parentType || ComplexReferenceParentType.Container == parentType); 1318 Debug.Assert(ComplexReferenceParentType.PayloadGroup == parentType || ComplexReferenceParentType.Package == parentType || ComplexReferenceParentType.Container == parentType);
@@ -1345,6 +1350,10 @@ namespace WixToolset.Core
1345 /// <param name="node">Element to parse</param> 1350 /// <param name="node">Element to parse</param>
1346 /// <param name="parentType">ComplexReferenceParentType of parent element.</param> 1351 /// <param name="parentType">ComplexReferenceParentType of parent element.</param>
1347 /// <param name="parentId">Identifier of parent element.</param> 1352 /// <param name="parentId">Identifier of parent element.</param>
1353 /// <param name="previousType"></param>
1354 /// <param name="previousId"></param>
1355 /// <param name="required"></param>
1356 /// <param name="id"></param>
1348 /// <returns>Whether SourceFile was specified.</returns> 1357 /// <returns>Whether SourceFile was specified.</returns>
1349 private bool ParsePayloadElementContent(XElement node, ComplexReferenceParentType parentType, Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId, bool required, out Identifier id) 1358 private bool ParsePayloadElementContent(XElement node, ComplexReferenceParentType parentType, Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId, bool required, out Identifier id)
1350 { 1359 {
@@ -1519,9 +1528,21 @@ namespace WixToolset.Core
1519 /// <summary> 1528 /// <summary>
1520 /// Creates the row for a Payload. 1529 /// Creates the row for a Payload.
1521 /// </summary> 1530 /// </summary>
1522 /// <param name="node">Element to parse</param> 1531 /// <param name="sourceLineNumbers"></param>
1532 /// <param name="id"></param>
1533 /// <param name="name"></param>
1534 /// <param name="sourceFile"></param>
1535 /// <param name="downloadUrl"></param>
1523 /// <param name="parentType">ComplexReferenceParentType of parent element</param> 1536 /// <param name="parentType">ComplexReferenceParentType of parent element</param>
1524 /// <param name="parentId">Identifier of parent element.</param> 1537 /// <param name="parentId">Identifier of parent element.</param>
1538 /// <param name="previousType"></param>
1539 /// <param name="previousId"></param>
1540 /// <param name="compressed"></param>
1541 /// <param name="enableSignatureVerification"></param>
1542 /// <param name="displayName"></param>
1543 /// <param name="description"></param>
1544 /// <param name="remotePayload"></param>
1545 /// <returns></returns>
1525 private WixBundlePayloadSymbol CreatePayloadRow(SourceLineNumber sourceLineNumbers, Identifier id, string name, string sourceFile, string downloadUrl, ComplexReferenceParentType parentType, 1546 private WixBundlePayloadSymbol CreatePayloadRow(SourceLineNumber sourceLineNumbers, Identifier id, string name, string sourceFile, string downloadUrl, ComplexReferenceParentType parentType,
1526 Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId, YesNoDefaultType compressed, YesNoType enableSignatureVerification, string displayName, string description, 1547 Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId, YesNoDefaultType compressed, YesNoType enableSignatureVerification, string displayName, string description,
1527 RemotePayload remotePayload) 1548 RemotePayload remotePayload)
@@ -1640,6 +1661,8 @@ namespace WixToolset.Core
1640 /// <param name="node">Element to parse.</param> 1661 /// <param name="node">Element to parse.</param>
1641 /// <param name="parentType">ComplexReferenceParentType of parent element (BA or PayloadGroup).</param> 1662 /// <param name="parentType">ComplexReferenceParentType of parent element (BA or PayloadGroup).</param>
1642 /// <param name="parentId">Identifier of parent element.</param> 1663 /// <param name="parentId">Identifier of parent element.</param>
1664 /// <param name="previousType"></param>
1665 /// <param name="previousId"></param>
1643 private Identifier ParsePayloadGroupRefElement(XElement node, ComplexReferenceParentType parentType, Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId) 1666 private Identifier ParsePayloadGroupRefElement(XElement node, ComplexReferenceParentType parentType, Identifier parentId, ComplexReferenceChildType previousType, Identifier previousId)
1644 { 1667 {
1645 Debug.Assert(ComplexReferenceParentType.Layout == parentType || ComplexReferenceParentType.PayloadGroup == parentType || ComplexReferenceParentType.Package == parentType || ComplexReferenceParentType.Container == parentType); 1668 Debug.Assert(ComplexReferenceParentType.Layout == parentType || ComplexReferenceParentType.PayloadGroup == parentType || ComplexReferenceParentType.Package == parentType || ComplexReferenceParentType.Container == parentType);
@@ -2513,6 +2536,7 @@ namespace WixToolset.Core
2513 /// Parse CommandLine element. 2536 /// Parse CommandLine element.
2514 /// </summary> 2537 /// </summary>
2515 /// <param name="node">Element to parse</param> 2538 /// <param name="node">Element to parse</param>
2539 /// <param name="packageId">Parent packageId</param>
2516 private void ParseCommandLineElement(XElement node, string packageId) 2540 private void ParseCommandLineElement(XElement node, string packageId)
2517 { 2541 {
2518 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 2542 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
@@ -2661,7 +2685,7 @@ namespace WixToolset.Core
2661 /// <param name="node">Element to parse.</param> 2685 /// <param name="node">Element to parse.</param>
2662 /// <param name="parentType">ComplexReferenceParentType of parent element (Unknown or PackageGroup).</param> 2686 /// <param name="parentType">ComplexReferenceParentType of parent element (Unknown or PackageGroup).</param>
2663 /// <param name="parentId">Identifier of parent element.</param> 2687 /// <param name="parentId">Identifier of parent element.</param>
2664 /// <returns>Identifier for package group element.</rereturns> 2688 /// <returns>Identifier for package group element.</returns>
2665 private string ParsePackageGroupRefElement(XElement node, ComplexReferenceParentType parentType, string parentId) 2689 private string ParsePackageGroupRefElement(XElement node, ComplexReferenceParentType parentType, string parentId)
2666 { 2690 {
2667 return this.ParsePackageGroupRefElement(node, parentType, parentId, ComplexReferenceChildType.Unknown, null); 2691 return this.ParsePackageGroupRefElement(node, parentType, parentId, ComplexReferenceChildType.Unknown, null);
@@ -2673,9 +2697,9 @@ namespace WixToolset.Core
2673 /// <param name="node">Element to parse.</param> 2697 /// <param name="node">Element to parse.</param>
2674 /// <param name="parentType">ComplexReferenceParentType of parent element (Unknown or PackageGroup).</param> 2698 /// <param name="parentType">ComplexReferenceParentType of parent element (Unknown or PackageGroup).</param>
2675 /// <param name="parentId">Identifier of parent element.</param> 2699 /// <param name="parentId">Identifier of parent element.</param>
2676 /// <param name="parentType">ComplexReferenceParentType of previous element (Unknown, Package, or PackageGroup).</param> 2700 /// <param name="previousType"></param>
2677 /// <param name="parentId">Identifier of parent element.</param> 2701 /// <param name="previousId"></param>
2678 /// <returns>Identifier for package group element.</rereturns> 2702 /// <returns>Identifier for package group element.</returns>
2679 private string ParsePackageGroupRefElement(XElement node, ComplexReferenceParentType parentType, string parentId, ComplexReferenceChildType previousType, string previousId) 2703 private string ParsePackageGroupRefElement(XElement node, ComplexReferenceParentType parentType, string parentId, ComplexReferenceChildType previousType, string previousId)
2680 { 2704 {
2681 Debug.Assert(ComplexReferenceParentType.Unknown == parentType || ComplexReferenceParentType.PackageGroup == parentType || ComplexReferenceParentType.Container == parentType); 2705 Debug.Assert(ComplexReferenceParentType.Unknown == parentType || ComplexReferenceParentType.PackageGroup == parentType || ComplexReferenceParentType.Container == parentType);
@@ -2740,6 +2764,7 @@ namespace WixToolset.Core
2740 /// <param name="sourceLineNumbers">Source line numbers.</param> 2764 /// <param name="sourceLineNumbers">Source line numbers.</param>
2741 /// <param name="id">Identifier for the rollback boundary.</param> 2765 /// <param name="id">Identifier for the rollback boundary.</param>
2742 /// <param name="vital">Indicates whether the rollback boundary is vital or not.</param> 2766 /// <param name="vital">Indicates whether the rollback boundary is vital or not.</param>
2767 /// <param name="transaction">Indicates whether the rollback boundary will use an MSI transaction.</param>
2743 /// <param name="parentType">Type of parent group.</param> 2768 /// <param name="parentType">Type of parent group.</param>
2744 /// <param name="parentId">Identifier of parent group.</param> 2769 /// <param name="parentId">Identifier of parent group.</param>
2745 /// <param name="previousType">Type of previous item, if any.</param> 2770 /// <param name="previousType">Type of previous item, if any.</param>
diff --git a/src/WixToolset.Core/Compiler_EmbeddedUI.cs b/src/WixToolset.Core/Compiler_EmbeddedUI.cs
index d71bb09a..ca658962 100644
--- a/src/WixToolset.Core/Compiler_EmbeddedUI.cs
+++ b/src/WixToolset.Core/Compiler_EmbeddedUI.cs
@@ -335,7 +335,6 @@ namespace WixToolset.Core
335 /// Parses a embedded UI resource element. 335 /// Parses a embedded UI resource element.
336 /// </summary> 336 /// </summary>
337 /// <param name="node">Element to parse.</param> 337 /// <param name="node">Element to parse.</param>
338 /// <param name="parentId">Identifier of parent EmbeddedUI element.</param>
339 private void ParseEmbeddedUIResourceElement(XElement node) 338 private void ParseEmbeddedUIResourceElement(XElement node)
340 { 339 {
341 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 340 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
diff --git a/src/WixToolset.Core/Compiler_Patch.cs b/src/WixToolset.Core/Compiler_Patch.cs
index 73e7f521..eb99d5c4 100644
--- a/src/WixToolset.Core/Compiler_Patch.cs
+++ b/src/WixToolset.Core/Compiler_Patch.cs
@@ -319,6 +319,8 @@ namespace WixToolset.Core
319 /// Parses a PatchFamily element. 319 /// Parses a PatchFamily element.
320 /// </summary> 320 /// </summary>
321 /// <param name="node">The element to parse.</param> 321 /// <param name="node">The element to parse.</param>
322 /// <param name="parentType"></param>
323 /// <param name="parentId"></param>
322 private void ParsePatchFamilyElement(XElement node, ComplexReferenceParentType parentType, string parentId) 324 private void ParsePatchFamilyElement(XElement node, ComplexReferenceParentType parentType, string parentId)
323 { 325 {
324 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 326 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
@@ -444,6 +446,8 @@ namespace WixToolset.Core
444 /// Parses a PatchFamilyGroup element. 446 /// Parses a PatchFamilyGroup element.
445 /// </summary> 447 /// </summary>
446 /// <param name="node">Element to parse.</param> 448 /// <param name="node">Element to parse.</param>
449 /// <param name="parentType"></param>
450 /// <param name="parentId"></param>
447 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")] 451 [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
448 private void ParsePatchFamilyGroupElement(XElement node, ComplexReferenceParentType parentType, string parentId) 452 private void ParsePatchFamilyGroupElement(XElement node, ComplexReferenceParentType parentType, string parentId)
449 { 453 {
diff --git a/src/WixToolset.Core/Compiler_UI.cs b/src/WixToolset.Core/Compiler_UI.cs
index cb1d34ac..5cc9b5a0 100644
--- a/src/WixToolset.Core/Compiler_UI.cs
+++ b/src/WixToolset.Core/Compiler_UI.cs
@@ -1049,12 +1049,11 @@ namespace WixToolset.Core
1049 /// </summary> 1049 /// </summary>
1050 /// <param name="node">Element to parse.</param> 1050 /// <param name="node">Element to parse.</param>
1051 /// <param name="dialog">Identifier for parent dialog.</param> 1051 /// <param name="dialog">Identifier for parent dialog.</param>
1052 /// <param name="table">Table control belongs in.</param> 1052 /// <param name="symbolType">Table control belongs in.</param>
1053 /// <param name="lastTabSymbol">Last control in the tab order.</param> 1053 /// <param name="lastTabSymbol">Last control in the tab order.</param>
1054 /// <param name="firstControl">Name of the first control in the tab order.</param> 1054 /// <param name="firstControl">Name of the first control in the tab order.</param>
1055 /// <param name="defaultControl">Name of the default control.</param> 1055 /// <param name="defaultControl">Name of the default control.</param>
1056 /// <param name="cancelControl">Name of the candle control.</param> 1056 /// <param name="cancelControl">Name of the candle control.</param>
1057 /// <param name="trackDiskSpace">True if the containing dialog tracks disk space.</param>
1058 private void ParseControlElement(XElement node, string dialog, SymbolDefinitionType symbolType, ref ControlSymbol lastTabSymbol, ref string firstControl, ref string defaultControl, ref string cancelControl) 1057 private void ParseControlElement(XElement node, string dialog, SymbolDefinitionType symbolType, ref ControlSymbol lastTabSymbol, ref string firstControl, ref string defaultControl, ref string cancelControl)
1059 { 1058 {
1060 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); 1059 var sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node);
diff --git a/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs b/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs
index de5595e1..6a71c4e9 100644
--- a/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs
+++ b/src/WixToolset.Core/ExtensibilityServices/ParseHelper.cs
@@ -149,12 +149,6 @@ namespace WixToolset.Core.ExtensibilityServices
149 return suffix == null ? null : name + suffix; 149 return suffix == null ? null : name + suffix;
150 } 150 }
151 151
152 [Obsolete]
153 public Identifier CreateRegistryRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, RegistryRootType root, string key, string name, string value, string componentId, bool escapeLeadingHash)
154 {
155 return this.CreateRegistrySymbol(section, sourceLineNumbers, root, key, name, value, componentId, escapeLeadingHash);
156 }
157
158 public Identifier CreateRegistrySymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, RegistryRootType root, string key, string name, string value, string componentId, bool escapeLeadingHash) 152 public Identifier CreateRegistrySymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, RegistryRootType root, string key, string name, string value, string componentId, bool escapeLeadingHash)
159 { 153 {
160 if (RegistryRootType.Unknown == root) 154 if (RegistryRootType.Unknown == root)
@@ -220,12 +214,6 @@ namespace WixToolset.Core.ExtensibilityServices
220 this.CreateSimpleReference(section, sourceLineNumbers, symbolDefinition.Name, primaryKeys); 214 this.CreateSimpleReference(section, sourceLineNumbers, symbolDefinition.Name, primaryKeys);
221 } 215 }
222 216
223 [Obsolete]
224 public void CreateWixGroupRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, ComplexReferenceParentType parentType, string parentId, ComplexReferenceChildType childType, string childId)
225 {
226 this.CreateWixGroupSymbol(section, sourceLineNumbers, parentType, parentId, childType, childId);
227 }
228
229 public void CreateWixGroupSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, ComplexReferenceParentType parentType, string parentId, ComplexReferenceChildType childType, string childId) 217 public void CreateWixGroupSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, ComplexReferenceParentType parentType, string parentId, ComplexReferenceChildType childType, string childId)
230 { 218 {
231 if (null == parentId || ComplexReferenceParentType.Unknown == parentType) 219 if (null == parentId || ComplexReferenceParentType.Unknown == parentType)
@@ -284,18 +272,6 @@ namespace WixToolset.Core.ExtensibilityServices
284 }); 272 });
285 } 273 }
286 274
287 [Obsolete]
288 public IntermediateSymbol CreateRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, string tableName, Identifier identifier = null)
289 {
290 return this.CreateSymbol(section, sourceLineNumbers, tableName, identifier);
291 }
292
293 [Obsolete]
294 public IntermediateSymbol CreateRow(IntermediateSection section, SourceLineNumber sourceLineNumbers, SymbolDefinitionType symbolType, Identifier identifier = null)
295 {
296 return this.CreateSymbol(section, sourceLineNumbers, symbolType, identifier);
297 }
298
299 public IntermediateSymbol CreateSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, string symbolName, Identifier identifier = null) 275 public IntermediateSymbol CreateSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, string symbolName, Identifier identifier = null)
300 { 276 {
301 if (this.Creator == null) 277 if (this.Creator == null)
@@ -311,14 +287,6 @@ namespace WixToolset.Core.ExtensibilityServices
311 return this.CreateSymbol(section, sourceLineNumbers, symbolDefinition, identifier); 287 return this.CreateSymbol(section, sourceLineNumbers, symbolDefinition, identifier);
312 } 288 }
313 289
314 [Obsolete]
315 public IntermediateSymbol CreateSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, SymbolDefinitionType symbolType, Identifier identifier = null)
316 {
317 var symbolDefinition = SymbolDefinitions.ByType(symbolType);
318
319 return this.CreateSymbol(section, sourceLineNumbers, symbolDefinition, identifier);
320 }
321
322 public IntermediateSymbol CreateSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, IntermediateSymbolDefinition symbolDefinition, Identifier identifier = null) 290 public IntermediateSymbol CreateSymbol(IntermediateSection section, SourceLineNumber sourceLineNumbers, IntermediateSymbolDefinition symbolDefinition, Identifier identifier = null)
323 { 291 {
324 return section.AddSymbol(symbolDefinition.CreateSymbol(sourceLineNumbers, identifier)); 292 return section.AddSymbol(symbolDefinition.CreateSymbol(sourceLineNumbers, identifier));
diff --git a/src/WixToolset.Core/ExtensibilityServices/Uuid.cs b/src/WixToolset.Core/ExtensibilityServices/Uuid.cs
index a5692b71..ad9eea26 100644
--- a/src/WixToolset.Core/ExtensibilityServices/Uuid.cs
+++ b/src/WixToolset.Core/ExtensibilityServices/Uuid.cs
@@ -17,7 +17,6 @@ namespace WixToolset.Core.ExtensibilityServices
17 /// </summary> 17 /// </summary>
18 /// <param name="namespaceGuid">The namespace UUID.</param> 18 /// <param name="namespaceGuid">The namespace UUID.</param>
19 /// <param name="value">The value.</param> 19 /// <param name="value">The value.</param>
20 /// <param name="backwardsCompatible">Flag to say to use MD5 instead of better SHA1.</param>
21 /// <returns>The UUID for the given namespace and value.</returns> 20 /// <returns>The UUID for the given namespace and value.</returns>
22 public static Guid NewUuid(Guid namespaceGuid, string value) 21 public static Guid NewUuid(Guid namespaceGuid, string value)
23 { 22 {
diff --git a/src/WixToolset.Core/IBinder.cs b/src/WixToolset.Core/IBinder.cs
index c2ebc2a0..ec7ca4f5 100644
--- a/src/WixToolset.Core/IBinder.cs
+++ b/src/WixToolset.Core/IBinder.cs
@@ -4,7 +4,7 @@ namespace WixToolset.Core
4{ 4{
5 using WixToolset.Extensibility.Data; 5 using WixToolset.Extensibility.Data;
6 6
7 public interface IBinder 7 internal interface IBinder
8 { 8 {
9 IBindResult Bind(IBindContext context); 9 IBindResult Bind(IBindContext context);
10 } 10 }
diff --git a/src/WixToolset.Core/ICompiler.cs b/src/WixToolset.Core/ICompiler.cs
index a2c4a6e8..34a9a94a 100644
--- a/src/WixToolset.Core/ICompiler.cs
+++ b/src/WixToolset.Core/ICompiler.cs
@@ -1,11 +1,11 @@
1// 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. 1// 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.
2 2
3namespace WixToolset.Core 3namespace WixToolset.Core
4{ 4{
5 using WixToolset.Data; 5 using WixToolset.Data;
6 using WixToolset.Extensibility.Data; 6 using WixToolset.Extensibility.Data;
7 7
8 public interface ICompiler 8 internal interface ICompiler
9 { 9 {
10 Intermediate Compile(ICompileContext context); 10 Intermediate Compile(ICompileContext context);
11 } 11 }
diff --git a/src/WixToolset.Core/IDecompiler.cs b/src/WixToolset.Core/IDecompiler.cs
index 05b04be2..fdb8c2d0 100644
--- a/src/WixToolset.Core/IDecompiler.cs
+++ b/src/WixToolset.Core/IDecompiler.cs
@@ -4,7 +4,7 @@ namespace WixToolset.Core
4{ 4{
5 using WixToolset.Extensibility.Data; 5 using WixToolset.Extensibility.Data;
6 6
7 public interface IDecompiler 7 internal interface IDecompiler
8 { 8 {
9 IDecompileResult Decompile(IDecompileContext context); 9 IDecompileResult Decompile(IDecompileContext context);
10 } 10 }
diff --git a/src/WixToolset.Core/ILayoutCreator.cs b/src/WixToolset.Core/ILayoutCreator.cs
index f58d0aad..6b65e60f 100644
--- a/src/WixToolset.Core/ILayoutCreator.cs
+++ b/src/WixToolset.Core/ILayoutCreator.cs
@@ -1,10 +1,10 @@
1// 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. 1// 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.
2 2
3namespace WixToolset.Core 3namespace WixToolset.Core
4{ 4{
5 using WixToolset.Extensibility.Data; 5 using WixToolset.Extensibility.Data;
6 6
7 public interface ILayoutCreator 7 internal interface ILayoutCreator
8 { 8 {
9 void Layout(ILayoutContext context); 9 void Layout(ILayoutContext context);
10 } 10 }
diff --git a/src/WixToolset.Core/ILibrarian.cs b/src/WixToolset.Core/ILibrarian.cs
index 3e951e65..fa1dd816 100644
--- a/src/WixToolset.Core/ILibrarian.cs
+++ b/src/WixToolset.Core/ILibrarian.cs
@@ -1,11 +1,11 @@
1// 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. 1// 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.
2 2
3namespace WixToolset.Core 3namespace WixToolset.Core
4{ 4{
5 using WixToolset.Data; 5 using WixToolset.Data;
6 using WixToolset.Extensibility.Data; 6 using WixToolset.Extensibility.Data;
7 7
8 public interface ILibrarian 8 internal interface ILibrarian
9 { 9 {
10 Intermediate Combine(ILibraryContext context); 10 Intermediate Combine(ILibraryContext context);
11 } 11 }
diff --git a/src/WixToolset.Core/ILinker.cs b/src/WixToolset.Core/ILinker.cs
index 0580bf46..6a7fe0f7 100644
--- a/src/WixToolset.Core/ILinker.cs
+++ b/src/WixToolset.Core/ILinker.cs
@@ -1,10 +1,11 @@
1// 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. 1// 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.
2 2
3namespace WixToolset.Core 3namespace WixToolset.Core
4{ 4{
5 using WixToolset.Data; 5 using WixToolset.Data;
6 using WixToolset.Extensibility.Data; 6 using WixToolset.Extensibility.Data;
7 7
8#pragma warning disable 1591 // TODO: add documentation, move into Extensibility
8 public interface ILinker 9 public interface ILinker
9 { 10 {
10 Intermediate Link(ILinkContext context); 11 Intermediate Link(ILinkContext context);
diff --git a/src/WixToolset.Core/IPreprocessor.cs b/src/WixToolset.Core/IPreprocessor.cs
index 151f8111..f6ed5fed 100644
--- a/src/WixToolset.Core/IPreprocessor.cs
+++ b/src/WixToolset.Core/IPreprocessor.cs
@@ -5,6 +5,7 @@ namespace WixToolset.Core
5 using System.Xml; 5 using System.Xml;
6 using WixToolset.Extensibility.Data; 6 using WixToolset.Extensibility.Data;
7 7
8#pragma warning disable 1591 // TODO: add documentation, move into Extensibility
8 public interface IPreprocessor 9 public interface IPreprocessor
9 { 10 {
10 IPreprocessResult Preprocess(IPreprocessContext context); 11 IPreprocessResult Preprocess(IPreprocessContext context);
diff --git a/src/WixToolset.Core/IResolver.cs b/src/WixToolset.Core/IResolver.cs
index c5b2568f..661972c4 100644
--- a/src/WixToolset.Core/IResolver.cs
+++ b/src/WixToolset.Core/IResolver.cs
@@ -4,7 +4,7 @@ namespace WixToolset.Core
4{ 4{
5 using WixToolset.Extensibility.Data; 5 using WixToolset.Extensibility.Data;
6 6
7 public interface IResolver 7 internal interface IResolver
8 { 8 {
9 IResolveResult Resolve(IResolveContext context); 9 IResolveResult Resolve(IResolveContext context);
10 } 10 }
diff --git a/src/WixToolset.Core/Inscriber.cs b/src/WixToolset.Core/Inscriber.cs
index 649e1661..cff2dab2 100644
--- a/src/WixToolset.Core/Inscriber.cs
+++ b/src/WixToolset.Core/Inscriber.cs
@@ -10,10 +10,10 @@ namespace WixToolset.Core
10 /// </summary> 10 /// </summary>
11 internal class Inscriber 11 internal class Inscriber
12 { 12 {
13 /// <summary> 13 // <summary>
14 /// Gets or sets the temp files collection. 14 // Gets or sets the temp files collection.
15 /// </summary> 15 // </summary>
16 /// <value>The temp files collection.</value> 16 // <value>The temp files collection.</value>
17 // public TempFileCollection TempFiles 17 // public TempFileCollection TempFiles
18 // { 18 // {
19 // get { return this.tempFiles; } 19 // get { return this.tempFiles; }
diff --git a/src/WixToolset.Core/LayoutCreator.cs b/src/WixToolset.Core/LayoutCreator.cs
index 16fdd70f..0da18ab5 100644
--- a/src/WixToolset.Core/LayoutCreator.cs
+++ b/src/WixToolset.Core/LayoutCreator.cs
@@ -85,7 +85,7 @@ namespace WixToolset.Core
85 /// Writes the paths to the content files to a text file. 85 /// Writes the paths to the content files to a text file.
86 /// </summary> 86 /// </summary>
87 /// <param name="path">Path to write file.</param> 87 /// <param name="path">Path to write file.</param>
88 /// <param name="contentFilePaths">Collection of paths to content files that will be written to file.</param> 88 /// <param name="trackedFiles">Collection of paths to content files that will be written to file.</param>
89 private void CreateContentsFile(string path, IEnumerable<ITrackedFile> trackedFiles) 89 private void CreateContentsFile(string path, IEnumerable<ITrackedFile> trackedFiles)
90 { 90 {
91 var uniqueInputFilePaths = new SortedSet<string>(trackedFiles.Where(t => t.Type == TrackedFileType.Input).Select(t => t.Path), StringComparer.OrdinalIgnoreCase); 91 var uniqueInputFilePaths = new SortedSet<string>(trackedFiles.Where(t => t.Type == TrackedFileType.Input).Select(t => t.Path), StringComparer.OrdinalIgnoreCase);
@@ -111,7 +111,7 @@ namespace WixToolset.Core
111 /// Writes the paths to the output files to a text file. 111 /// Writes the paths to the output files to a text file.
112 /// </summary> 112 /// </summary>
113 /// <param name="path">Path to write file.</param> 113 /// <param name="path">Path to write file.</param>
114 /// <param name="fileTransfers">Collection of files that were transferred to the output directory.</param> 114 /// <param name="trackedFiles">Collection of files that were transferred to the output directory.</param>
115 private void CreateOutputsFile(string path, IEnumerable<ITrackedFile> trackedFiles) 115 private void CreateOutputsFile(string path, IEnumerable<ITrackedFile> trackedFiles)
116 { 116 {
117 var uniqueOutputPaths = new SortedSet<string>(trackedFiles.Where(t => t.Clean).Select(t => t.Path), StringComparer.OrdinalIgnoreCase); 117 var uniqueOutputPaths = new SortedSet<string>(trackedFiles.Where(t => t.Clean).Select(t => t.Path), StringComparer.OrdinalIgnoreCase);
@@ -142,7 +142,7 @@ namespace WixToolset.Core
142 /// Writes the paths to the built output files to a text file. 142 /// Writes the paths to the built output files to a text file.
143 /// </summary> 143 /// </summary>
144 /// <param name="path">Path to write file.</param> 144 /// <param name="path">Path to write file.</param>
145 /// <param name="fileTransfers">Collection of files that were transferred to the output directory.</param> 145 /// <param name="trackedFiles">Collection of files that were transferred to the output directory.</param>
146 private void CreateBuiltOutputsFile(string path, IEnumerable<ITrackedFile> trackedFiles) 146 private void CreateBuiltOutputsFile(string path, IEnumerable<ITrackedFile> trackedFiles)
147 { 147 {
148 var uniqueBuiltPaths = new SortedSet<string>(trackedFiles.Where(t => t.Type == TrackedFileType.Final).Select(t => t.Path), StringComparer.OrdinalIgnoreCase); 148 var uniqueBuiltPaths = new SortedSet<string>(trackedFiles.Where(t => t.Type == TrackedFileType.Final).Select(t => t.Path), StringComparer.OrdinalIgnoreCase);
diff --git a/src/WixToolset.Core/Link/SymbolWithSection.cs b/src/WixToolset.Core/Link/SymbolWithSection.cs
index c8934d0f..08e01077 100644
--- a/src/WixToolset.Core/Link/SymbolWithSection.cs
+++ b/src/WixToolset.Core/Link/SymbolWithSection.cs
@@ -18,6 +18,7 @@ namespace WixToolset.Core.Link
18 /// <summary> 18 /// <summary>
19 /// Creates a symbol for a symbol. 19 /// Creates a symbol for a symbol.
20 /// </summary> 20 /// </summary>
21 /// <param name="section"></param>
21 /// <param name="symbol">Symbol for the symbol</param> 22 /// <param name="symbol">Symbol for the symbol</param>
22 public SymbolWithSection(IntermediateSection section, IntermediateSymbol symbol) 23 public SymbolWithSection(IntermediateSection section, IntermediateSymbol symbol)
23 { 24 {
diff --git a/src/WixToolset.Core/Link/WixComplexReferenceSymbolExtensions.cs b/src/WixToolset.Core/Link/WixComplexReferenceSymbolExtensions.cs
index 1702d3ca..2b1925ad 100644
--- a/src/WixToolset.Core/Link/WixComplexReferenceSymbolExtensions.cs
+++ b/src/WixToolset.Core/Link/WixComplexReferenceSymbolExtensions.cs
@@ -1,4 +1,4 @@
1// 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. 1// 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.
2 2
3namespace WixToolset.Core.Link 3namespace WixToolset.Core.Link
4{ 4{
@@ -27,7 +27,8 @@ namespace WixToolset.Core.Link
27 /// <summary> 27 /// <summary>
28 /// Compares two complex references without considering the primary bit. 28 /// Compares two complex references without considering the primary bit.
29 /// </summary> 29 /// </summary>
30 /// <param name="obj">Complex reference to compare to.</param> 30 /// <param name="symbol">this</param>
31 /// <param name="other">Complex reference to compare to.</param>
31 /// <returns>Zero if the objects are equivalent, negative number if the provided object is less, positive if greater.</returns> 32 /// <returns>Zero if the objects are equivalent, negative number if the provided object is less, positive if greater.</returns>
32 public static int CompareToWithoutConsideringPrimary(this WixComplexReferenceSymbol symbol, WixComplexReferenceSymbol other) 33 public static int CompareToWithoutConsideringPrimary(this WixComplexReferenceSymbol symbol, WixComplexReferenceSymbol other)
33 { 34 {
@@ -57,6 +58,7 @@ namespace WixToolset.Core.Link
57 /// <summary> 58 /// <summary>
58 /// Changes all of the parent references to point to the passed in parent reference. 59 /// Changes all of the parent references to point to the passed in parent reference.
59 /// </summary> 60 /// </summary>
61 /// <param name="symbol">this</param>
60 /// <param name="parent">New parent complex reference.</param> 62 /// <param name="parent">New parent complex reference.</param>
61 public static void Reparent(this WixComplexReferenceSymbol symbol, WixComplexReferenceSymbol parent) 63 public static void Reparent(this WixComplexReferenceSymbol symbol, WixComplexReferenceSymbol parent)
62 { 64 {
diff --git a/src/WixToolset.Core/Link/WixGroupingOrdering.cs b/src/WixToolset.Core/Link/WixGroupingOrdering.cs
index a7013062..a8044a0c 100644
--- a/src/WixToolset.Core/Link/WixGroupingOrdering.cs
+++ b/src/WixToolset.Core/Link/WixGroupingOrdering.cs
@@ -29,10 +29,8 @@ namespace WixToolset.Core.Link
29 /// <summary> 29 /// <summary>
30 /// Creates a WixGroupingOrdering object. 30 /// Creates a WixGroupingOrdering object.
31 /// </summary> 31 /// </summary>
32 /// <param name="output">Output from which to read the group and order information.</param> 32 /// <param name="entrySections">Output from which to read the group and order information.</param>
33 /// <param name="messageHandler">Handler for any error messages.</param> 33 /// <param name="messageHandler">Handler for any error messages.</param>
34 /// <param name="groupTypes">Group types to include.</param>
35 /// <param name="itemTypes">Item types to include.</param>
36 public WixGroupingOrdering(IntermediateSection entrySections, IMessaging messageHandler) 34 public WixGroupingOrdering(IntermediateSection entrySections, IMessaging messageHandler)
37 { 35 {
38 this.EntrySection = entrySections; 36 this.EntrySection = entrySections;
@@ -582,7 +580,7 @@ namespace WixToolset.Core.Link
582 /// <summary> 580 /// <summary>
583 /// Adds an item to the 'after' ordering collection. 581 /// Adds an item to the 'after' ordering collection.
584 /// </summary> 582 /// </summary>
585 /// <param name="item">Items to add.</param> 583 /// <param name="after">Item to add.</param>
586 /// <param name="messageHandler">Message handler in case a circular ordering reference is found.</param> 584 /// <param name="messageHandler">Message handler in case a circular ordering reference is found.</param>
587 public void AddAfter(Item after, IMessaging messageHandler) 585 public void AddAfter(Item after, IMessaging messageHandler)
588 { 586 {
diff --git a/src/WixToolset.Core/Linker.cs b/src/WixToolset.Core/Linker.cs
index 86eb7a3d..e9f9554c 100644
--- a/src/WixToolset.Core/Linker.cs
+++ b/src/WixToolset.Core/Linker.cs
@@ -1219,7 +1219,7 @@ namespace WixToolset.Core
1219 /// <summary> 1219 /// <summary>
1220 /// Flattens the tables used in a Bundle. 1220 /// Flattens the tables used in a Bundle.
1221 /// </summary> 1221 /// </summary>
1222 /// <param name="output">Output containing the tables to process.</param> 1222 /// <param name="entrySection">Output containing the tables to process.</param>
1223 private void FlattenBundleTables(IntermediateSection entrySection) 1223 private void FlattenBundleTables(IntermediateSection entrySection)
1224 { 1224 {
1225 if (SectionType.Bundle != entrySection.Type) 1225 if (SectionType.Bundle != entrySection.Type)
diff --git a/src/WixToolset.Core/LocalizationParser.cs b/src/WixToolset.Core/LocalizationParser.cs
index 3b66b707..a0cf38a9 100644
--- a/src/WixToolset.Core/LocalizationParser.cs
+++ b/src/WixToolset.Core/LocalizationParser.cs
@@ -63,6 +63,7 @@ namespace WixToolset.Core
63 /// <summary> 63 /// <summary>
64 /// Adds a WixVariableRow to a dictionary while performing the expected override checks. 64 /// Adds a WixVariableRow to a dictionary while performing the expected override checks.
65 /// </summary> 65 /// </summary>
66 /// <param name="messaging"></param>
66 /// <param name="variables">Dictionary of variable rows.</param> 67 /// <param name="variables">Dictionary of variable rows.</param>
67 /// <param name="wixVariableRow">Row to add to the variables dictionary.</param> 68 /// <param name="wixVariableRow">Row to add to the variables dictionary.</param>
68 private static void AddWixVariable(IMessaging messaging, IDictionary<string, BindVariable> variables, BindVariable wixVariableRow) 69 private static void AddWixVariable(IMessaging messaging, IDictionary<string, BindVariable> variables, BindVariable wixVariableRow)
@@ -80,6 +81,7 @@ namespace WixToolset.Core
80 /// <summary> 81 /// <summary>
81 /// Parses the WixLocalization element. 82 /// Parses the WixLocalization element.
82 /// </summary> 83 /// </summary>
84 /// <param name="messaging"></param>
83 /// <param name="node">Element to parse.</param> 85 /// <param name="node">Element to parse.</param>
84 private static Localization ParseWixLocalizationElement(IMessaging messaging, XElement node) 86 private static Localization ParseWixLocalizationElement(IMessaging messaging, XElement node)
85 { 87 {
@@ -147,7 +149,9 @@ namespace WixToolset.Core
147 /// <summary> 149 /// <summary>
148 /// Parse a localization string into a WixVariableRow. 150 /// Parse a localization string into a WixVariableRow.
149 /// </summary> 151 /// </summary>
152 /// <param name="messaging"></param>
150 /// <param name="node">Element to parse.</param> 153 /// <param name="node">Element to parse.</param>
154 /// <param name="variables"></param>
151 private static void ParseString(IMessaging messaging, XElement node, IDictionary<string, BindVariable> variables) 155 private static void ParseString(IMessaging messaging, XElement node, IDictionary<string, BindVariable> variables)
152 { 156 {
153 string id = null; 157 string id = null;
@@ -208,6 +212,7 @@ namespace WixToolset.Core
208 /// <summary> 212 /// <summary>
209 /// Parse a localized control. 213 /// Parse a localized control.
210 /// </summary> 214 /// </summary>
215 /// <param name="messaging"></param>
211 /// <param name="node">Element to parse.</param> 216 /// <param name="node">Element to parse.</param>
212 /// <param name="localizedControls">Dictionary of localized controls.</param> 217 /// <param name="localizedControls">Dictionary of localized controls.</param>
213 private static void ParseUI(IMessaging messaging, XElement node, IDictionary<string, LocalizedControl> localizedControls) 218 private static void ParseUI(IMessaging messaging, XElement node, IDictionary<string, LocalizedControl> localizedControls)
diff --git a/src/WixToolset.Core/PatchSymbolFlagsType.cs b/src/WixToolset.Core/PatchSymbolFlagsType.cs
index eeb5c798..e751fd18 100644
--- a/src/WixToolset.Core/PatchSymbolFlagsType.cs
+++ b/src/WixToolset.Core/PatchSymbolFlagsType.cs
@@ -1,19 +1,34 @@
1// 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. 1// 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.
2 2
3namespace WixToolset.Core 3namespace WixToolset.Core
4{ 4{
5 using System; 5 using System;
6 6
7 // 7 /// <summary>
8 // The following flags are used with PATCH_OPTION_DATA SymbolOptionFlags: 8 /// The following flags are used with PATCH_OPTION_DATA SymbolOptionFlags:
9 // 9 /// </summary>
10 [Flags] 10 [Flags]
11 public enum PatchSymbolFlagsType : uint 11 public enum PatchSymbolFlagsType : uint
12 { 12 {
13 PATCH_SYMBOL_NO_IMAGEHLP = 0x00000001, // don't use imagehlp.dll 13 /// <summary>
14 PATCH_SYMBOL_NO_FAILURES = 0x00000002, // don't fail patch due to imagehlp failures 14 /// don't use imagehlp.dll
15 PATCH_SYMBOL_UNDECORATED_TOO = 0x00000004, // after matching decorated symbols, try to match remaining by undecorated names 15 /// </summary>
16 PATCH_SYMBOL_RESERVED1 = 0x80000000, // (used internally) 16 PATCH_SYMBOL_NO_IMAGEHLP = 0x00000001,
17 /// <summary>
18 /// don't fail patch due to imagehlp failures
19 /// </summary>
20 PATCH_SYMBOL_NO_FAILURES = 0x00000002,
21 /// <summary>
22 /// after matching decorated symbols, try to match remaining by undecorated names
23 /// </summary>
24 PATCH_SYMBOL_UNDECORATED_TOO = 0x00000004,
25 /// <summary>
26 /// (used internally)
27 /// </summary>
28 PATCH_SYMBOL_RESERVED1 = 0x80000000,
29 /// <summary>
30 ///
31 /// </summary>
17 MaxValue = PATCH_SYMBOL_NO_IMAGEHLP | PATCH_SYMBOL_NO_FAILURES | PATCH_SYMBOL_UNDECORATED_TOO 32 MaxValue = PATCH_SYMBOL_NO_IMAGEHLP | PATCH_SYMBOL_NO_FAILURES | PATCH_SYMBOL_UNDECORATED_TOO
18 } 33 }
19} 34}
diff --git a/src/WixToolset.Core/Preprocess/IfDefEventHandler.cs b/src/WixToolset.Core/Preprocess/IfDefEventHandler.cs
index ff181d61..6b56638a 100644
--- a/src/WixToolset.Core/Preprocess/IfDefEventHandler.cs
+++ b/src/WixToolset.Core/Preprocess/IfDefEventHandler.cs
@@ -5,9 +5,9 @@ namespace WixToolset.Core.Preprocess
5 using System; 5 using System;
6 using WixToolset.Data; 6 using WixToolset.Data;
7 7
8 public delegate void IfDefEventHandler(object sender, IfDefEventArgs e); 8 internal delegate void IfDefEventHandler(object sender, IfDefEventArgs e);
9 9
10 public class IfDefEventArgs : EventArgs 10 internal class IfDefEventArgs : EventArgs
11 { 11 {
12 public IfDefEventArgs(SourceLineNumber sourceLineNumbers, bool isIfDef, bool isDefined, string variableName) 12 public IfDefEventArgs(SourceLineNumber sourceLineNumbers, bool isIfDef, bool isDefined, string variableName)
13 { 13 {
diff --git a/src/WixToolset.Core/Preprocess/IncludedFileEventHandler.cs b/src/WixToolset.Core/Preprocess/IncludedFileEventHandler.cs
index beba216d..3c8ff2e8 100644
--- a/src/WixToolset.Core/Preprocess/IncludedFileEventHandler.cs
+++ b/src/WixToolset.Core/Preprocess/IncludedFileEventHandler.cs
@@ -9,13 +9,13 @@ namespace WixToolset.Core.Preprocess
9 /// Included file event handler delegate. 9 /// Included file event handler delegate.
10 /// </summary> 10 /// </summary>
11 /// <param name="sender">Sender of the message.</param> 11 /// <param name="sender">Sender of the message.</param>
12 /// <param name="ea">Arguments for the included file event.</param> 12 /// <param name="e">Arguments for the included file event.</param>
13 public delegate void IncludedFileEventHandler(object sender, IncludedFileEventArgs e); 13 internal delegate void IncludedFileEventHandler(object sender, IncludedFileEventArgs e);
14 14
15 /// <summary> 15 /// <summary>
16 /// Event args for included file event. 16 /// Event args for included file event.
17 /// </summary> 17 /// </summary>
18 public class IncludedFileEventArgs : EventArgs 18 internal class IncludedFileEventArgs : EventArgs
19 { 19 {
20 /// <summary> 20 /// <summary>
21 /// Creates a new IncludedFileEventArgs. 21 /// Creates a new IncludedFileEventArgs.
diff --git a/src/WixToolset.Core/Preprocess/ProcessedStreamEventHandler.cs b/src/WixToolset.Core/Preprocess/ProcessedStreamEventHandler.cs
index b2a4ddb1..672b4b9f 100644
--- a/src/WixToolset.Core/Preprocess/ProcessedStreamEventHandler.cs
+++ b/src/WixToolset.Core/Preprocess/ProcessedStreamEventHandler.cs
@@ -9,13 +9,13 @@ namespace WixToolset.Core.Preprocess
9 /// Preprocessed output stream event handler delegate. 9 /// Preprocessed output stream event handler delegate.
10 /// </summary> 10 /// </summary>
11 /// <param name="sender">Sender of the message.</param> 11 /// <param name="sender">Sender of the message.</param>
12 /// <param name="ea">Arguments for the preprocessed stream event.</param> 12 /// <param name="e">Arguments for the preprocessed stream event.</param>
13 public delegate void ProcessedStreamEventHandler(object sender, ProcessedStreamEventArgs e); 13 internal delegate void ProcessedStreamEventHandler(object sender, ProcessedStreamEventArgs e);
14 14
15 /// <summary> 15 /// <summary>
16 /// Event args for preprocessed stream event. 16 /// Event args for preprocessed stream event.
17 /// </summary> 17 /// </summary>
18 public class ProcessedStreamEventArgs : EventArgs 18 internal class ProcessedStreamEventArgs : EventArgs
19 { 19 {
20 /// <summary> 20 /// <summary>
21 /// Creates a new ProcessedStreamEventArgs. 21 /// Creates a new ProcessedStreamEventArgs.
diff --git a/src/WixToolset.Core/Preprocess/ResolvedVariableEventHandler.cs b/src/WixToolset.Core/Preprocess/ResolvedVariableEventHandler.cs
index df3a7e6a..6d159ad0 100644
--- a/src/WixToolset.Core/Preprocess/ResolvedVariableEventHandler.cs
+++ b/src/WixToolset.Core/Preprocess/ResolvedVariableEventHandler.cs
@@ -5,9 +5,9 @@ namespace WixToolset.Core.Preprocess
5 using System; 5 using System;
6 using WixToolset.Data; 6 using WixToolset.Data;
7 7
8 public delegate void ResolvedVariableEventHandler(object sender, ResolvedVariableEventArgs e); 8 internal delegate void ResolvedVariableEventHandler(object sender, ResolvedVariableEventArgs e);
9 9
10 public class ResolvedVariableEventArgs : EventArgs 10 internal class ResolvedVariableEventArgs : EventArgs
11 { 11 {
12 public ResolvedVariableEventArgs(SourceLineNumber sourceLineNumbers, string variableName, string variableValue) 12 public ResolvedVariableEventArgs(SourceLineNumber sourceLineNumbers, string variableName, string variableValue)
13 { 13 {
diff --git a/src/WixToolset.Core/PreprocessResult.cs b/src/WixToolset.Core/PreprocessResult.cs
index 8595d21d..7126f049 100644
--- a/src/WixToolset.Core/PreprocessResult.cs
+++ b/src/WixToolset.Core/PreprocessResult.cs
@@ -6,7 +6,7 @@ namespace WixToolset.Core
6 using System.Xml.Linq; 6 using System.Xml.Linq;
7 using WixToolset.Extensibility.Data; 7 using WixToolset.Extensibility.Data;
8 8
9 public class PreprocessResult : IPreprocessResult 9 internal class PreprocessResult : IPreprocessResult
10 { 10 {
11 public XDocument Document { get; set; } 11 public XDocument Document { get; set; }
12 12
diff --git a/src/WixToolset.Core/Preprocessor.cs b/src/WixToolset.Core/Preprocessor.cs
index c6cd3801..b111b291 100644
--- a/src/WixToolset.Core/Preprocessor.cs
+++ b/src/WixToolset.Core/Preprocessor.cs
@@ -63,10 +63,10 @@ namespace WixToolset.Core
63 /// </summary> 63 /// </summary>
64 public event ProcessedStreamEventHandler ProcessedStream; 64 public event ProcessedStreamEventHandler ProcessedStream;
65 65
66 /// <summary> 66 // <summary>
67 /// Event for resolved variables. 67 // Event for resolved variables.
68 /// </summary> 68 // </summary>
69 /// TOOD: Remove? 69 // TOOD: Remove?
70 //public event ResolvedVariableEventHandler ResolvedVariable; 70 //public event ResolvedVariableEventHandler ResolvedVariable;
71 71
72 /// <summary> 72 /// <summary>
@@ -134,7 +134,7 @@ namespace WixToolset.Core
134 /// <summary> 134 /// <summary>
135 /// Preprocesses a file. 135 /// Preprocesses a file.
136 /// </summary> 136 /// </summary>
137 /// <param name="context">The preprocessing context.</param> 137 /// <param name="state">The preprocessing context.</param>
138 /// <param name="reader">XmlReader to processing the context.</param> 138 /// <param name="reader">XmlReader to processing the context.</param>
139 /// <returns>XDocument with the postprocessed data.</returns> 139 /// <returns>XDocument with the postprocessed data.</returns>
140 private IPreprocessResult Process(ProcessingState state, XmlReader reader) 140 private IPreprocessResult Process(ProcessingState state, XmlReader reader)
@@ -266,6 +266,7 @@ namespace WixToolset.Core
266 /// <summary> 266 /// <summary>
267 /// Processes an xml reader into an xml writer. 267 /// Processes an xml reader into an xml writer.
268 /// </summary> 268 /// </summary>
269 /// <param name="state"></param>
269 /// <param name="include">Specifies if reader is from an included file.</param> 270 /// <param name="include">Specifies if reader is from an included file.</param>
270 /// <param name="reader">Reader for the source document.</param> 271 /// <param name="reader">Reader for the source document.</param>
271 /// <param name="container">Node where content should be added.</param> 272 /// <param name="container">Node where content should be added.</param>
@@ -546,6 +547,7 @@ namespace WixToolset.Core
546 /// <summary> 547 /// <summary>
547 /// Processes an error processing instruction. 548 /// Processes an error processing instruction.
548 /// </summary> 549 /// </summary>
550 /// <param name="state"></param>
549 /// <param name="errorMessage">Text from source.</param> 551 /// <param name="errorMessage">Text from source.</param>
550 private void PreprocessError(ProcessingState state, string errorMessage) 552 private void PreprocessError(ProcessingState state, string errorMessage)
551 { 553 {
@@ -558,6 +560,7 @@ namespace WixToolset.Core
558 /// <summary> 560 /// <summary>
559 /// Processes a warning processing instruction. 561 /// Processes a warning processing instruction.
560 /// </summary> 562 /// </summary>
563 /// <param name="state"></param>
561 /// <param name="warningMessage">Text from source.</param> 564 /// <param name="warningMessage">Text from source.</param>
562 private void PreprocessWarning(ProcessingState state, string warningMessage) 565 private void PreprocessWarning(ProcessingState state, string warningMessage)
563 { 566 {
@@ -570,6 +573,7 @@ namespace WixToolset.Core
570 /// <summary> 573 /// <summary>
571 /// Processes a define processing instruction and creates the appropriate parameter. 574 /// Processes a define processing instruction and creates the appropriate parameter.
572 /// </summary> 575 /// </summary>
576 /// <param name="state"></param>
573 /// <param name="originalDefine">Text from source.</param> 577 /// <param name="originalDefine">Text from source.</param>
574 private void PreprocessDefine(ProcessingState state, string originalDefine) 578 private void PreprocessDefine(ProcessingState state, string originalDefine)
575 { 579 {
@@ -607,6 +611,7 @@ namespace WixToolset.Core
607 /// <summary> 611 /// <summary>
608 /// Processes an undef processing instruction and creates the appropriate parameter. 612 /// Processes an undef processing instruction and creates the appropriate parameter.
609 /// </summary> 613 /// </summary>
614 /// <param name="state"></param>
610 /// <param name="originalDefine">Text from source.</param> 615 /// <param name="originalDefine">Text from source.</param>
611 private void PreprocessUndef(ProcessingState state, string originalDefine) 616 private void PreprocessUndef(ProcessingState state, string originalDefine)
612 { 617 {
@@ -625,6 +630,7 @@ namespace WixToolset.Core
625 /// <summary> 630 /// <summary>
626 /// Processes an included file. 631 /// Processes an included file.
627 /// </summary> 632 /// </summary>
633 /// <param name="state"></param>
628 /// <param name="includePath">Path to included file.</param> 634 /// <param name="includePath">Path to included file.</param>
629 /// <param name="parent">Parent container for included content.</param> 635 /// <param name="parent">Parent container for included content.</param>
630 private void PreprocessInclude(ProcessingState state, string includePath, XContainer parent) 636 private void PreprocessInclude(ProcessingState state, string includePath, XContainer parent)
@@ -671,6 +677,7 @@ namespace WixToolset.Core
671 /// <summary> 677 /// <summary>
672 /// Preprocess a foreach processing instruction. 678 /// Preprocess a foreach processing instruction.
673 /// </summary> 679 /// </summary>
680 /// <param name="state"></param>
674 /// <param name="reader">The xml reader.</param> 681 /// <param name="reader">The xml reader.</param>
675 /// <param name="container">The container where to output processed data.</param> 682 /// <param name="container">The container where to output processed data.</param>
676 /// <param name="offset">Offset for the line numbers.</param> 683 /// <param name="offset">Offset for the line numbers.</param>
@@ -785,7 +792,9 @@ namespace WixToolset.Core
785 /// <summary> 792 /// <summary>
786 /// Processes a pragma processing instruction 793 /// Processes a pragma processing instruction
787 /// </summary> 794 /// </summary>
795 /// <param name="state"></param>
788 /// <param name="pragmaText">Text from source.</param> 796 /// <param name="pragmaText">Text from source.</param>
797 /// <param name="parent"></param>
789 private void PreprocessPragma(ProcessingState state, string pragmaText, XContainer parent) 798 private void PreprocessPragma(ProcessingState state, string pragmaText, XContainer parent)
790 { 799 {
791 var match = PragmaRegex.Match(pragmaText); 800 var match = PragmaRegex.Match(pragmaText);
@@ -811,6 +820,7 @@ namespace WixToolset.Core
811 /// <summary> 820 /// <summary>
812 /// Gets the next token in an expression. 821 /// Gets the next token in an expression.
813 /// </summary> 822 /// </summary>
823 /// <param name="state"></param>
814 /// <param name="originalExpression">Expression to parse.</param> 824 /// <param name="originalExpression">Expression to parse.</param>
815 /// <param name="expression">Expression with token removed.</param> 825 /// <param name="expression">Expression with token removed.</param>
816 /// <param name="stringLiteral">Flag if token is a string literal instead of a variable.</param> 826 /// <param name="stringLiteral">Flag if token is a string literal instead of a variable.</param>
@@ -958,6 +968,7 @@ namespace WixToolset.Core
958 /// <summary> 968 /// <summary>
959 /// Gets the value for a variable. 969 /// Gets the value for a variable.
960 /// </summary> 970 /// </summary>
971 /// <param name="state"></param>
961 /// <param name="originalExpression">Original expression for error message.</param> 972 /// <param name="originalExpression">Original expression for error message.</param>
962 /// <param name="variable">Variable to evaluate.</param> 973 /// <param name="variable">Variable to evaluate.</param>
963 /// <returns>Value of variable.</returns> 974 /// <returns>Value of variable.</returns>
@@ -996,6 +1007,7 @@ namespace WixToolset.Core
996 /// <summary> 1007 /// <summary>
997 /// Gets the left side value, operator, and right side value of an expression. 1008 /// Gets the left side value, operator, and right side value of an expression.
998 /// </summary> 1009 /// </summary>
1010 /// <param name="state"></param>
999 /// <param name="originalExpression">Original expression to evaluate.</param> 1011 /// <param name="originalExpression">Original expression to evaluate.</param>
1000 /// <param name="expression">Expression modified while processing.</param> 1012 /// <param name="expression">Expression modified while processing.</param>
1001 /// <param name="leftValue">Left side value from expression.</param> 1013 /// <param name="leftValue">Left side value from expression.</param>
@@ -1048,6 +1060,7 @@ namespace WixToolset.Core
1048 /// <summary> 1060 /// <summary>
1049 /// Evaluates an expression. 1061 /// Evaluates an expression.
1050 /// </summary> 1062 /// </summary>
1063 /// <param name="state"></param>
1051 /// <param name="originalExpression">Original expression to evaluate.</param> 1064 /// <param name="originalExpression">Original expression to evaluate.</param>
1052 /// <param name="expression">Expression modified while processing.</param> 1065 /// <param name="expression">Expression modified while processing.</param>
1053 /// <returns>true if expression evaluates to true.</returns> 1066 /// <returns>true if expression evaluates to true.</returns>
@@ -1143,6 +1156,7 @@ namespace WixToolset.Core
1143 /// <summary> 1156 /// <summary>
1144 /// Gets a sub-expression in parenthesis. 1157 /// Gets a sub-expression in parenthesis.
1145 /// </summary> 1158 /// </summary>
1159 /// <param name="state"></param>
1146 /// <param name="originalExpression">Original expression to evaluate.</param> 1160 /// <param name="originalExpression">Original expression to evaluate.</param>
1147 /// <param name="expression">Expression modified while processing.</param> 1161 /// <param name="expression">Expression modified while processing.</param>
1148 /// <param name="endSubExpression">Index of end of sub-expression.</param> 1162 /// <param name="endSubExpression">Index of end of sub-expression.</param>
@@ -1197,6 +1211,7 @@ namespace WixToolset.Core
1197 /// <summary> 1211 /// <summary>
1198 /// Updates expression based on operation. 1212 /// Updates expression based on operation.
1199 /// </summary> 1213 /// </summary>
1214 /// <param name="state"></param>
1200 /// <param name="currentValue">State to update.</param> 1215 /// <param name="currentValue">State to update.</param>
1201 /// <param name="operation">Operation to apply to current value.</param> 1216 /// <param name="operation">Operation to apply to current value.</param>
1202 /// <param name="prevResult">Previous result.</param> 1217 /// <param name="prevResult">Previous result.</param>
@@ -1221,6 +1236,7 @@ namespace WixToolset.Core
1221 /// <summary> 1236 /// <summary>
1222 /// Evaluate an expression. 1237 /// Evaluate an expression.
1223 /// </summary> 1238 /// </summary>
1239 /// <param name="state"></param>
1224 /// <param name="expression">Expression to evaluate.</param> 1240 /// <param name="expression">Expression to evaluate.</param>
1225 /// <returns>Boolean result of expression.</returns> 1241 /// <returns>Boolean result of expression.</returns>
1226 private bool EvaluateExpression(ProcessingState state, string expression) 1242 private bool EvaluateExpression(ProcessingState state, string expression)
@@ -1252,6 +1268,7 @@ namespace WixToolset.Core
1252 /// $(var.A) and $(var.B)>2 or $(var.B) &lt;= 2 1268 /// $(var.A) and $(var.B)>2 or $(var.B) &lt;= 2
1253 /// $(var.A) != "2" 1269 /// $(var.A) != "2"
1254 /// </summary> 1270 /// </summary>
1271 /// <param name="state"></param>
1255 /// <param name="originalExpression">The original expression</param> 1272 /// <param name="originalExpression">The original expression</param>
1256 /// <param name="expression">The expression currently being evaluated</param> 1273 /// <param name="expression">The expression currently being evaluated</param>
1257 /// <param name="prevResultOperation">The operation to apply to this result</param> 1274 /// <param name="prevResultOperation">The operation to apply to this result</param>
@@ -1322,6 +1339,7 @@ namespace WixToolset.Core
1322 /// <summary> 1339 /// <summary>
1323 /// Update the current line number with the reader's current state. 1340 /// Update the current line number with the reader's current state.
1324 /// </summary> 1341 /// </summary>
1342 /// <param name="state"></param>
1325 /// <param name="reader">The xml reader for the preprocessor.</param> 1343 /// <param name="reader">The xml reader for the preprocessor.</param>
1326 /// <param name="offset">This is the artificial offset of the line numbers from the reader. Used for the foreach processing.</param> 1344 /// <param name="offset">This is the artificial offset of the line numbers from the reader. Used for the foreach processing.</param>
1327 private void UpdateCurrentLineNumber(ProcessingState state, XmlReader reader, int offset) 1345 private void UpdateCurrentLineNumber(ProcessingState state, XmlReader reader, int offset)
@@ -1341,6 +1359,7 @@ namespace WixToolset.Core
1341 /// <summary> 1359 /// <summary>
1342 /// Pushes a file name on the stack of included files. 1360 /// Pushes a file name on the stack of included files.
1343 /// </summary> 1361 /// </summary>
1362 /// <param name="state"></param>
1344 /// <param name="fileName">Name to push on to the stack of included files.</param> 1363 /// <param name="fileName">Name to push on to the stack of included files.</param>
1345 private void PushInclude(ProcessingState state, string fileName) 1364 private void PushInclude(ProcessingState state, string fileName)
1346 { 1365 {
@@ -1374,6 +1393,7 @@ namespace WixToolset.Core
1374 /// through the search paths in the order given on the command line 1393 /// through the search paths in the order given on the command line
1375 /// (leftmost first, ...). 1394 /// (leftmost first, ...).
1376 /// </summary> 1395 /// </summary>
1396 /// <param name="state"></param>
1377 /// <param name="includePath">User-specified path to the included file (usually just the file name).</param> 1397 /// <param name="includePath">User-specified path to the included file (usually just the file name).</param>
1378 /// <returns>Returns a FileInfo for the found include file, or null if the file cannot be found.</returns> 1398 /// <returns>Returns a FileInfo for the found include file, or null if the file cannot be found.</returns>
1379 private string GetIncludeFile(ProcessingState state, string includePath) 1399 private string GetIncludeFile(ProcessingState state, string includePath)
diff --git a/src/WixToolset.Core/ResolveFileResult.cs b/src/WixToolset.Core/ResolveFileResult.cs
index e36c474a..12b31d54 100644
--- a/src/WixToolset.Core/ResolveFileResult.cs
+++ b/src/WixToolset.Core/ResolveFileResult.cs
@@ -5,7 +5,7 @@ namespace WixToolset.Core
5 using System.Collections.Generic; 5 using System.Collections.Generic;
6 using WixToolset.Extensibility.Data; 6 using WixToolset.Extensibility.Data;
7 7
8 public class ResolveFileResult : IResolveFileResult 8 internal class ResolveFileResult : IResolveFileResult
9 { 9 {
10 public string Path { get; set; } 10 public string Path { get; set; }
11 11
diff --git a/src/WixToolset.Core/WixToolset.Core.csproj b/src/WixToolset.Core/WixToolset.Core.csproj
index 3952f97c..947c445f 100644
--- a/src/WixToolset.Core/WixToolset.Core.csproj
+++ b/src/WixToolset.Core/WixToolset.Core.csproj
@@ -9,6 +9,8 @@
9 <Title>WiX Toolset Core</Title> 9 <Title>WiX Toolset Core</Title>
10 <DebugType>embedded</DebugType> 10 <DebugType>embedded</DebugType>
11 <PublishRepositoryUrl>true</PublishRepositoryUrl> 11 <PublishRepositoryUrl>true</PublishRepositoryUrl>
12 <NBGV_EmitThisAssemblyClass>true</NBGV_EmitThisAssemblyClass>
13 <CreateDocumentationFile>true</CreateDocumentationFile>
12 </PropertyGroup> 14 </PropertyGroup>
13 15
14 <ItemGroup> 16 <ItemGroup>
diff --git a/src/WixToolset.Core/WixToolsetServiceProviderFactory.cs b/src/WixToolset.Core/WixToolsetServiceProviderFactory.cs
index 51e7a447..8e07070b 100644
--- a/src/WixToolset.Core/WixToolsetServiceProviderFactory.cs
+++ b/src/WixToolset.Core/WixToolsetServiceProviderFactory.cs
@@ -4,8 +4,15 @@ namespace WixToolset.Core
4{ 4{
5 using WixToolset.Extensibility.Services; 5 using WixToolset.Extensibility.Services;
6 6
7 /// <summary>
8 /// Class for creating <see cref="IWixToolsetCoreServiceProvider"/>.
9 /// </summary>
7 public static class WixToolsetServiceProviderFactory 10 public static class WixToolsetServiceProviderFactory
8 { 11 {
12 /// <summary>
13 /// Creates a new <see cref="IWixToolsetCoreServiceProvider"/>.
14 /// </summary>
15 /// <returns>The created <see cref="IWixToolsetCoreServiceProvider"/></returns>
9 public static IWixToolsetCoreServiceProvider CreateServiceProvider() 16 public static IWixToolsetCoreServiceProvider CreateServiceProvider()
10 { 17 {
11 return new WixToolsetServiceProvider(); 18 return new WixToolsetServiceProvider();