mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Move SabreTools.Filter to SabreTools.Core.Filter
This commit is contained in:
@@ -3,7 +3,7 @@ using System.Linq;
|
|||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using SabreTools.Models.Metadata;
|
using SabreTools.Models.Metadata;
|
||||||
|
|
||||||
namespace SabreTools.Filter
|
namespace SabreTools.Core.Filter
|
||||||
{
|
{
|
||||||
public static class FieldManipulator
|
public static class FieldManipulator
|
||||||
{
|
{
|
||||||
@@ -3,7 +3,7 @@ using System.Text.RegularExpressions;
|
|||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.Models.Metadata;
|
using SabreTools.Models.Metadata;
|
||||||
|
|
||||||
namespace SabreTools.Filter
|
namespace SabreTools.Core.Filter
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a single filtering object
|
/// Represents a single filtering object
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using SabreTools.Models.Metadata;
|
using SabreTools.Models.Metadata;
|
||||||
|
|
||||||
namespace SabreTools.Filter
|
namespace SabreTools.Core.Filter
|
||||||
{
|
{
|
||||||
public static class FilterParser
|
public static class FilterParser
|
||||||
{
|
{
|
||||||
@@ -3,7 +3,7 @@ using System.Collections.Generic;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using SabreTools.Models.Metadata;
|
using SabreTools.Models.Metadata;
|
||||||
|
|
||||||
namespace SabreTools.Filter
|
namespace SabreTools.Core.Filter
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a set of filters that can be run against an object
|
/// Represents a set of filters that can be run against an object
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
namespace SabreTools.Filter
|
namespace SabreTools.Core.Filter
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Determines what operation is being done
|
/// Determines what operation is being done
|
||||||
@@ -5,7 +5,7 @@ using System.Xml.Serialization;
|
|||||||
using SabreTools.Models;
|
using SabreTools.Models;
|
||||||
using SabreTools.Models.Metadata;
|
using SabreTools.Models.Metadata;
|
||||||
|
|
||||||
namespace SabreTools.Filter
|
namespace SabreTools.Core.Filter
|
||||||
{
|
{
|
||||||
public static class TypeHelper
|
public static class TypeHelper
|
||||||
{
|
{
|
||||||
@@ -8,11 +8,11 @@ using System.Threading.Tasks;
|
|||||||
using System.Xml.Serialization;
|
using System.Xml.Serialization;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.DatFiles.Formats;
|
using SabreTools.DatFiles.Formats;
|
||||||
using SabreTools.DatItems;
|
using SabreTools.DatItems;
|
||||||
using SabreTools.DatItems.Formats;
|
using SabreTools.DatItems.Formats;
|
||||||
using SabreTools.Filter;
|
|
||||||
using SabreTools.Hashing;
|
using SabreTools.Hashing;
|
||||||
using SabreTools.Logging;
|
using SabreTools.Logging;
|
||||||
using SabreTools.Serialization.Interfaces;
|
using SabreTools.Serialization.Interfaces;
|
||||||
|
|||||||
@@ -4,9 +4,9 @@ using System.IO;
|
|||||||
using System.Xml.Serialization;
|
using System.Xml.Serialization;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.DatFiles.Formats;
|
using SabreTools.DatFiles.Formats;
|
||||||
using SabreTools.Filter;
|
|
||||||
|
|
||||||
namespace SabreTools.DatFiles
|
namespace SabreTools.DatFiles
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.DatItems;
|
using SabreTools.DatItems;
|
||||||
using SabreTools.DatItems.Formats;
|
using SabreTools.DatItems.Formats;
|
||||||
using SabreTools.Filter;
|
|
||||||
using SabreTools.Logging;
|
using SabreTools.Logging;
|
||||||
|
|
||||||
namespace SabreTools.DatFiles
|
namespace SabreTools.DatFiles
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ using System.Reflection;
|
|||||||
using System.Xml.Serialization;
|
using System.Xml.Serialization;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.DatItems.Formats;
|
using SabreTools.DatItems.Formats;
|
||||||
using SabreTools.FileTypes;
|
using SabreTools.FileTypes;
|
||||||
using SabreTools.Filter;
|
|
||||||
using SabreTools.Hashing;
|
using SabreTools.Hashing;
|
||||||
using SabreTools.Logging;
|
using SabreTools.Logging;
|
||||||
using SabreTools.Matching;
|
using SabreTools.Matching;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
using System.Xml.Serialization;
|
using System.Xml.Serialization;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
using SabreTools.Filter;
|
using SabreTools.Core.Filter;
|
||||||
|
|
||||||
namespace SabreTools.DatItems
|
namespace SabreTools.DatItems
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -23,7 +23,6 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\SabreTools.Core\SabreTools.Core.csproj" />
|
<ProjectReference Include="..\SabreTools.Core\SabreTools.Core.csproj" />
|
||||||
<ProjectReference Include="..\SabreTools.FileTypes\SabreTools.FileTypes.csproj" />
|
<ProjectReference Include="..\SabreTools.FileTypes\SabreTools.FileTypes.csproj" />
|
||||||
<ProjectReference Include="..\SabreTools.Filter\SabreTools.Filter.csproj" />
|
|
||||||
<ProjectReference Include="..\SabreTools.Logging\SabreTools.Logging.csproj" />
|
<ProjectReference Include="..\SabreTools.Logging\SabreTools.Logging.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
# SabreTools.Filter
|
|
||||||
|
|
||||||
This library contains classes and helpers revolving around filtering and field manipulation. These methods are centered around the internal models that are defined in `SabreTools.Models`. Most of these methods also involve reflection, so it is unlikely that this will be a candidate for NativeAOT.
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
<Project Sdk="Microsoft.NET.Sdk">
|
|
||||||
|
|
||||||
<PropertyGroup>
|
|
||||||
<!-- Assembly Properties -->
|
|
||||||
<TargetFrameworks>net20;net35;net40;net452;net462;net472;net48;netcoreapp3.1;net5.0;net6.0;net7.0;net8.0</TargetFrameworks>
|
|
||||||
<RuntimeIdentifiers>win-x86;win-x64;win-arm64;linux-x64;linux-arm64;osx-x64</RuntimeIdentifiers>
|
|
||||||
<CheckEolTargetFramework>false</CheckEolTargetFramework>
|
|
||||||
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
|
||||||
<LangVersion>latest</LangVersion>
|
|
||||||
<Nullable>enable</Nullable>
|
|
||||||
<SuppressTfmSupportBuildWarnings>true</SuppressTfmSupportBuildWarnings>
|
|
||||||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
|
||||||
<Version>1.1.2</Version>
|
|
||||||
|
|
||||||
<!-- Package Properties -->
|
|
||||||
<Authors>Matt Nadareski</Authors>
|
|
||||||
<Copyright>Copyright (c)2016-2024 Matt Nadareski</Copyright>
|
|
||||||
<PackageProjectUrl>https://github.com/SabreTools/</PackageProjectUrl>
|
|
||||||
<RepositoryUrl>https://github.com/SabreTools/SabreTools</RepositoryUrl>
|
|
||||||
<RepositoryType>git</RepositoryType>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\SabreTools.Core\SabreTools.Core.csproj" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="SabreTools.Models" Version="1.4.0" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
</Project>
|
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.DatFiles;
|
using SabreTools.DatFiles;
|
||||||
using SabreTools.DatItems;
|
using SabreTools.DatItems;
|
||||||
using SabreTools.Logging;
|
using SabreTools.Logging;
|
||||||
@@ -68,7 +69,7 @@ namespace SabreTools.Filtering
|
|||||||
string fieldString = inputTrimmed.Split(':')[0].ToLowerInvariant().Trim('"', ' ', '\t');
|
string fieldString = inputTrimmed.Split(':')[0].ToLowerInvariant().Trim('"', ' ', '\t');
|
||||||
string fileString = inputTrimmed.Substring(fieldString.Length + 1).Trim('"', ' ', '\t');
|
string fileString = inputTrimmed.Substring(fieldString.Length + 1).Trim('"', ' ', '\t');
|
||||||
|
|
||||||
item.FieldName = SabreTools.Filter.FilterParser.ParseFilterId(fieldString);
|
item.FieldName = FilterParser.ParseFilterId(fieldString);
|
||||||
if (item.PopulateFromFile(fileString))
|
if (item.PopulateFromFile(fileString))
|
||||||
Items.Add(item);
|
Items.Add(item);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,11 +4,11 @@ using System.Linq;
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
#endif
|
#endif
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.DatFiles;
|
using SabreTools.DatFiles;
|
||||||
using SabreTools.DatItems;
|
using SabreTools.DatItems;
|
||||||
using SabreTools.DatItems.Formats;
|
using SabreTools.DatItems.Formats;
|
||||||
using SabreTools.Filter;
|
|
||||||
using SabreTools.Logging;
|
using SabreTools.Logging;
|
||||||
|
|
||||||
namespace SabreTools.Filtering
|
namespace SabreTools.Filtering
|
||||||
|
|||||||
@@ -24,7 +24,6 @@
|
|||||||
<ProjectReference Include="..\SabreTools.Core\SabreTools.Core.csproj" />
|
<ProjectReference Include="..\SabreTools.Core\SabreTools.Core.csproj" />
|
||||||
<ProjectReference Include="..\SabreTools.DatFiles\SabreTools.DatFiles.csproj" />
|
<ProjectReference Include="..\SabreTools.DatFiles\SabreTools.DatFiles.csproj" />
|
||||||
<ProjectReference Include="..\SabreTools.DatItems\SabreTools.DatItems.csproj" />
|
<ProjectReference Include="..\SabreTools.DatItems\SabreTools.DatItems.csproj" />
|
||||||
<ProjectReference Include="..\SabreTools.Filter\SabreTools.Filter.csproj" />
|
|
||||||
<ProjectReference Include="..\SabreTools.Logging\SabreTools.Logging.csproj" />
|
<ProjectReference Include="..\SabreTools.Logging\SabreTools.Logging.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.DatItems;
|
using SabreTools.DatItems;
|
||||||
using SabreTools.DatItems.Formats;
|
using SabreTools.DatItems.Formats;
|
||||||
using SabreTools.Filter;
|
|
||||||
using Xunit;
|
using Xunit;
|
||||||
|
|
||||||
namespace SabreTools.Test.Filter
|
namespace SabreTools.Test.Filter
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
using SabreTools.Filter;
|
using SabreTools.Core.Filter;
|
||||||
using Xunit;
|
using Xunit;
|
||||||
|
|
||||||
namespace SabreTools.Test.Filter
|
namespace SabreTools.Test.Filter
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
# Visual Studio Version 16
|
# Visual Studio Version 17
|
||||||
VisualStudioVersion = 16.0.30128.74
|
VisualStudioVersion = 17.9.34607.119
|
||||||
MinimumVisualStudioVersion = 10.0.40219.1
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.DatFiles", "SabreTools.DatFiles\SabreTools.DatFiles.csproj", "{CA54EDF8-100F-46E7-933C-0E081C7FCBD3}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.DatFiles", "SabreTools.DatFiles\SabreTools.DatFiles.csproj", "{CA54EDF8-100F-46E7-933C-0E081C7FCBD3}"
|
||||||
EndProject
|
EndProject
|
||||||
@@ -18,23 +18,21 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
|
|||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.Core", "SabreTools.Core\SabreTools.Core.csproj", "{66E2FB10-77C0-4589-9DCD-3CA48702C18A}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.Core", "SabreTools.Core\SabreTools.Core.csproj", "{66E2FB10-77C0-4589-9DCD-3CA48702C18A}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Help", "SabreTools.Help\SabreTools.Help.csproj", "{55364167-844F-4B58-8280-F5327FA3D8E7}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.Help", "SabreTools.Help\SabreTools.Help.csproj", "{55364167-844F-4B58-8280-F5327FA3D8E7}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Logging", "SabreTools.Logging\SabreTools.Logging.csproj", "{3D54D896-19F0-4723-B1E3-E40FAFE5A078}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.Logging", "SabreTools.Logging\SabreTools.Logging.csproj", "{3D54D896-19F0-4723-B1E3-E40FAFE5A078}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Filtering", "SabreTools.Filtering\SabreTools.Filtering.csproj", "{35129634-0F13-416A-8D4D-35B71DFECFFD}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.Filtering", "SabreTools.Filtering\SabreTools.Filtering.csproj", "{35129634-0F13-416A-8D4D-35B71DFECFFD}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.FileTypes", "SabreTools.FileTypes\SabreTools.FileTypes.csproj", "{0B36F39B-69CB-4E8A-B251-D063CB08B247}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.FileTypes", "SabreTools.FileTypes\SabreTools.FileTypes.csproj", "{0B36F39B-69CB-4E8A-B251-D063CB08B247}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.DatItems", "SabreTools.DatItems\SabreTools.DatItems.csproj", "{90ADE461-33B1-4E0D-925F-C99913665F0C}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.DatItems", "SabreTools.DatItems\SabreTools.DatItems.csproj", "{90ADE461-33B1-4E0D-925F-C99913665F0C}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.DatTools", "SabreTools.DatTools\SabreTools.DatTools.csproj", "{E0D12252-BBF3-4E3C-B2E2-79FA49EE31E5}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.DatTools", "SabreTools.DatTools\SabreTools.DatTools.csproj", "{E0D12252-BBF3-4E3C-B2E2-79FA49EE31E5}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Reports", "SabreTools.Reports\SabreTools.Reports.csproj", "{8B3F0606-0C2F-4004-9CB6-4F1F2497DCE4}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.Reports", "SabreTools.Reports\SabreTools.Reports.csproj", "{8B3F0606-0C2F-4004-9CB6-4F1F2497DCE4}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Test", "SabreTools.Test\SabreTools.Test.csproj", "{5B4E67D5-F4DA-4750-8FE2-04D08E343791}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SabreTools.Test", "SabreTools.Test\SabreTools.Test.csproj", "{5B4E67D5-F4DA-4750-8FE2-04D08E343791}"
|
||||||
EndProject
|
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SabreTools.Filter", "SabreTools.Filter\SabreTools.Filter.csproj", "{2A7A27A9-5FB9-4F6D-88F3-67120668A029}"
|
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
@@ -140,14 +138,6 @@ Global
|
|||||||
{5B4E67D5-F4DA-4750-8FE2-04D08E343791}.Release|Any CPU.Build.0 = Release|Any CPU
|
{5B4E67D5-F4DA-4750-8FE2-04D08E343791}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{5B4E67D5-F4DA-4750-8FE2-04D08E343791}.Release|x64.ActiveCfg = Release|Any CPU
|
{5B4E67D5-F4DA-4750-8FE2-04D08E343791}.Release|x64.ActiveCfg = Release|Any CPU
|
||||||
{5B4E67D5-F4DA-4750-8FE2-04D08E343791}.Release|x64.Build.0 = Release|Any CPU
|
{5B4E67D5-F4DA-4750-8FE2-04D08E343791}.Release|x64.Build.0 = Release|Any CPU
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Debug|x64.ActiveCfg = Debug|Any CPU
|
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Debug|x64.Build.0 = Debug|Any CPU
|
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Release|x64.ActiveCfg = Release|Any CPU
|
|
||||||
{2A7A27A9-5FB9-4F6D-88F3-67120668A029}.Release|x64.Build.0 = Release|Any CPU
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ using System.Collections.Generic;
|
|||||||
using System.IO;
|
using System.IO;
|
||||||
using Microsoft.Data.Sqlite;
|
using Microsoft.Data.Sqlite;
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.DatFiles;
|
using SabreTools.DatFiles;
|
||||||
using SabreTools.DatTools;
|
using SabreTools.DatTools;
|
||||||
@@ -1783,7 +1784,7 @@ Some special strings that can be used:
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Preonfigured FilterRunner
|
/// Preonfigured FilterRunner
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected Filter.FilterRunner? FilterRunner { get; set; }
|
protected FilterRunner? FilterRunner { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Pre-configured DatHeader
|
/// Pre-configured DatHeader
|
||||||
@@ -2046,7 +2047,7 @@ Some special strings that can be used:
|
|||||||
List<string> updateFields = [];
|
List<string> updateFields = [];
|
||||||
foreach (string fieldName in GetList(features, UpdateFieldListValue))
|
foreach (string fieldName in GetList(features, UpdateFieldListValue))
|
||||||
{
|
{
|
||||||
(string? itemType, string? key) = SabreTools.Filter.FilterParser.ParseFilterId(fieldName);
|
(string? itemType, string? key) = FilterParser.ParseFilterId(fieldName);
|
||||||
if (itemType == Models.Metadata.MetadataFile.MachineKey && key != null)
|
if (itemType == Models.Metadata.MetadataFile.MachineKey && key != null)
|
||||||
updateFields.Add(key);
|
updateFields.Add(key);
|
||||||
}
|
}
|
||||||
@@ -2062,7 +2063,7 @@ Some special strings that can be used:
|
|||||||
Dictionary<string, List<string>> updateFields = [];
|
Dictionary<string, List<string>> updateFields = [];
|
||||||
foreach (string fieldName in GetList(features, UpdateFieldListValue))
|
foreach (string fieldName in GetList(features, UpdateFieldListValue))
|
||||||
{
|
{
|
||||||
(string? itemType, string? key) = SabreTools.Filter.FilterParser.ParseFilterId(fieldName);
|
(string? itemType, string? key) = FilterParser.ParseFilterId(fieldName);
|
||||||
if (itemType != null && itemType != Models.Metadata.MetadataFile.HeaderKey && itemType != Models.Metadata.MetadataFile.MachineKey && key != null)
|
if (itemType != null && itemType != Models.Metadata.MetadataFile.HeaderKey && itemType != Models.Metadata.MetadataFile.MachineKey && key != null)
|
||||||
{
|
{
|
||||||
if (!updateFields.ContainsKey(itemType))
|
if (!updateFields.ContainsKey(itemType))
|
||||||
@@ -2233,7 +2234,7 @@ Some special strings that can be used:
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Get FilterRunner from feature list
|
/// Get FilterRunner from feature list
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private static Filter.FilterRunner GetFilterRunner(Dictionary<string, Feature?> features)
|
private static FilterRunner GetFilterRunner(Dictionary<string, Feature?> features)
|
||||||
{
|
{
|
||||||
// Populate filters
|
// Populate filters
|
||||||
List<string> filterPairs = GetList(features, FilterListValue);
|
List<string> filterPairs = GetList(features, FilterListValue);
|
||||||
@@ -2245,7 +2246,7 @@ Some special strings that can be used:
|
|||||||
// TODO: Support this use case somehow
|
// TODO: Support this use case somehow
|
||||||
}
|
}
|
||||||
|
|
||||||
var filterRunner = new Filter.FilterRunner(filterPairs.ToArray());
|
var filterRunner = new FilterRunner(filterPairs.ToArray());
|
||||||
|
|
||||||
return filterRunner;
|
return filterRunner;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ using System.IO;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using SabreTools.Core;
|
using SabreTools.Core;
|
||||||
|
using SabreTools.Core.Filter;
|
||||||
using SabreTools.Core.Tools;
|
using SabreTools.Core.Tools;
|
||||||
using SabreTools.DatFiles;
|
using SabreTools.DatFiles;
|
||||||
using SabreTools.DatTools;
|
using SabreTools.DatTools;
|
||||||
using SabreTools.Filter;
|
|
||||||
using SabreTools.Filtering;
|
using SabreTools.Filtering;
|
||||||
using SabreTools.Hashing;
|
using SabreTools.Hashing;
|
||||||
using SabreTools.Help;
|
using SabreTools.Help;
|
||||||
@@ -423,7 +423,7 @@ Reset the internal state: reset();";
|
|||||||
string filterString = $"{filterField}{(filterRemove == true ? "!" : string.Empty)}:{filterValue}";
|
string filterString = $"{filterField}{(filterRemove == true ? "!" : string.Empty)}:{filterValue}";
|
||||||
|
|
||||||
// Create filter to run filters from
|
// Create filter to run filters from
|
||||||
var filter = new Filter.FilterRunner([filterString]);
|
var filter = new FilterRunner([filterString]);
|
||||||
|
|
||||||
// Apply the filters blindly
|
// Apply the filters blindly
|
||||||
batchState.DatFile.ExecuteFilters(filter);
|
batchState.DatFile.ExecuteFilters(filter);
|
||||||
|
|||||||
Reference in New Issue
Block a user