aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.Burn/TableExtensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core.Burn/TableExtensions.cs')
-rw-r--r--src/WixToolset.Core.Burn/TableExtensions.cs24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/WixToolset.Core.Burn/TableExtensions.cs b/src/WixToolset.Core.Burn/TableExtensions.cs
new file mode 100644
index 00000000..465bf870
--- /dev/null
+++ b/src/WixToolset.Core.Burn/TableExtensions.cs
@@ -0,0 +1,24 @@
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
3namespace WixToolset.Core.Burn
4{
5 using System.Collections.Generic;
6 using System.Linq;
7 using WixToolset.Data.WindowsInstaller;
8
9 /// <summary>
10 /// Methods that extend <see cref="Table"/>.
11 /// </summary>
12 public static class TableExtensions
13 {
14 /// <summary>
15 /// Gets the rows contained in the table as a particular row type.
16 /// </summary>
17 /// <param name="table">Table to get rows from.</param>
18 /// <remarks>If the <paramref name="table"/> is null, an empty enumerable will be returned.</remarks>
19 public static IEnumerable<T> RowsAs<T>(this Table table) where T : Row
20 {
21 return (null == table) ? Enumerable.Empty<T>() : table.Rows.Cast<T>();
22 }
23 }
24}