diff options
Diffstat (limited to 'marching/Assets/ThirdParty/CSV-Parser')
23 files changed, 0 insertions, 529 deletions
diff --git a/marching/Assets/ThirdParty/CSV-Parser/.gitignore b/marching/Assets/ThirdParty/CSV-Parser/.gitignore deleted file mode 100644 index 19f0983..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -obj/ -bin/ -.vs/ -.vscode/ -.idea/ -*.DotSettings -*.user - -.DS_Store -.DS_Store? -._* -.Spotlight-V100 -.Trashes -ehthumbs.db -Thumbs.db
\ No newline at end of file diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.meta b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.meta deleted file mode 100644 index 1b9c4db..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 85cabb48324945548a8b18124ed3918a -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.sln b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.sln deleted file mode 100644 index 9e25d75..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.sln +++ /dev/null @@ -1,22 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSV Parser", "CSV Parser\CSV Parser.csproj", "{BB50E0DE-75A1-4E9A-AEFA-A823A434EFF3}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Tests\Tests.csproj", "{C7E7ACFD-66DB-4296-8536-4418728F3A5D}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {BB50E0DE-75A1-4E9A-AEFA-A823A434EFF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BB50E0DE-75A1-4E9A-AEFA-A823A434EFF3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BB50E0DE-75A1-4E9A-AEFA-A823A434EFF3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BB50E0DE-75A1-4E9A-AEFA-A823A434EFF3}.Release|Any CPU.Build.0 = Release|Any CPU - {C7E7ACFD-66DB-4296-8536-4418728F3A5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C7E7ACFD-66DB-4296-8536-4418728F3A5D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C7E7ACFD-66DB-4296-8536-4418728F3A5D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C7E7ACFD-66DB-4296-8536-4418728F3A5D}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection -EndGlobal diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.sln.meta b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.sln.meta deleted file mode 100644 index 3f5d3cf..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser.sln.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 2d428b7f5708308489ff910a5977b13c -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/CSV Parser.csproj b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/CSV Parser.csproj deleted file mode 100644 index bf48c73..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/CSV Parser.csproj +++ /dev/null @@ -1,13 +0,0 @@ -<Project Sdk="Microsoft.NET.Sdk"> - - <PropertyGroup> - <TargetFramework>net6.0</TargetFramework> - <RootNamespace>CSV_Parser</RootNamespace> - <LangVersion>7.3</LangVersion> - </PropertyGroup> - - <ItemGroup> - <PackageReference Include="System.Memory" Version="4.5.4" /> - </ItemGroup> - -</Project> diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/CSV Parser.csproj.meta b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/CSV Parser.csproj.meta deleted file mode 100644 index da4f4a8..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/CSV Parser.csproj.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: c9cc963a877064748a9e6fe4397c807f -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src.meta b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src.meta deleted file mode 100644 index 8e65917..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 3e17c685928714443973ed558020bdee -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/CSVParser.cs b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/CSVParser.cs deleted file mode 100644 index c886c19..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/CSVParser.cs +++ /dev/null @@ -1,181 +0,0 @@ -/* - * CSV Parser for C#. - * - * These codes are licensed under CC0. - * https://github.com/yutokun/CSV-Parser - */ - -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.IO; -using System.Text; -using System.Text.RegularExpressions; -using System.Threading.Tasks; - -namespace yutokun -{ - public static class CSVParser - { - /// <summary> - /// Load CSV data from specified path. - /// </summary> - /// <param name="path">CSV file path.</param> - /// <param name="delimiter">Delimiter.</param> - /// <param name="encoding">Type of text encoding. (default UTF-8)</param> - /// <returns>Nested list that CSV parsed.</returns> - public static List<List<string>> LoadFromPath(string path, Delimiter delimiter = Delimiter.Auto, Encoding encoding = null) - { - encoding = encoding ?? Encoding.UTF8; - - if (delimiter == Delimiter.Auto) - { - delimiter = EstimateDelimiter(path); - } - - var data = File.ReadAllText(path, encoding); - return Parse(data, delimiter); - } - - /// <summary> - /// Load CSV data asynchronously from specified path. - /// </summary> - /// <param name="path">CSV file path.</param> - /// <param name="delimiter">Delimiter.</param> - /// <param name="encoding">Type of text encoding. (default UTF-8)</param> - /// <returns>Nested list that CSV parsed.</returns> - public static async Task<List<List<string>>> LoadFromPathAsync(string path, Delimiter delimiter = Delimiter.Auto, Encoding encoding = null) - { - encoding = encoding ?? Encoding.UTF8; - - if (delimiter == Delimiter.Auto) - { - delimiter = EstimateDelimiter(path); - } - - using (var reader = new StreamReader(path, encoding)) - { - var data = await reader.ReadToEndAsync(); - return Parse(data, delimiter); - } - } - - static Delimiter EstimateDelimiter(string path) - { - var extension = Path.GetExtension(path); - if (extension.Equals(".csv", StringComparison.OrdinalIgnoreCase)) - { - return Delimiter.Comma; - } - - if (extension.Equals(".tsv", StringComparison.OrdinalIgnoreCase)) - { - return Delimiter.Tab; - } - - throw new Exception($"Delimiter estimation failed. Unknown Extension: {extension}"); - } - - /// <summary> - /// Load CSV data from string. - /// </summary> - /// <param name="data">CSV string</param> - /// <param name="delimiter">Delimiter.</param> - /// <returns>Nested list that CSV parsed.</returns> - public static List<List<string>> LoadFromString(string data, Delimiter delimiter = Delimiter.Comma) - { - if (delimiter == Delimiter.Auto) throw new InvalidEnumArgumentException("Delimiter estimation from string is not supported."); - return Parse(data, delimiter); - } - - static List<List<string>> Parse(string data, Delimiter delimiter) - { - ConvertToCrlf(ref data); - - var sheet = new List<List<string>>(); - var row = new List<string>(); - var cell = new StringBuilder(); - var insideQuoteCell = false; - var start = 0; - - var delimiterSpan = delimiter.ToChar().ToString().AsSpan(); - var crlfSpan = "\r\n".AsSpan(); - var oneDoubleQuotSpan = "\"".AsSpan(); - var twoDoubleQuotSpan = "\"\"".AsSpan(); - - while (start < data.Length) - { - var length = start <= data.Length - 2 ? 2 : 1; - var span = data.AsSpan(start, length); - - if (span.StartsWith(delimiterSpan)) - { - if (insideQuoteCell) - { - cell.Append(delimiter.ToChar()); - } - else - { - AddCell(row, cell); - } - - start += 1; - } - else if (span.StartsWith(crlfSpan)) - { - if (insideQuoteCell) - { - cell.Append("\r\n"); - } - else - { - AddCell(row, cell); - AddRow(sheet, ref row); - } - - start += 2; - } - else if (span.StartsWith(twoDoubleQuotSpan)) - { - cell.Append("\""); - start += 2; - } - else if (span.StartsWith(oneDoubleQuotSpan)) - { - insideQuoteCell = !insideQuoteCell; - start += 1; - } - else - { - cell.Append(span[0]); - start += 1; - } - } - - if (row.Count > 0 || cell.Length > 0) - { - AddCell(row, cell); - AddRow(sheet, ref row); - } - - return sheet; - } - - static void AddCell(List<string> row, StringBuilder cell) - { - row.Add(cell.ToString()); - cell.Length = 0; // Old C#. - } - - static void AddRow(List<List<string>> sheet, ref List<string> row) - { - sheet.Add(row); - row = new List<string>(); - } - - static void ConvertToCrlf(ref string data) - { - data = Regex.Replace(data, @"\r\n|\r|\n", "\r\n"); - } - } -} diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/CSVParser.cs.meta b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/CSVParser.cs.meta deleted file mode 100644 index fb3cd58..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/CSVParser.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1dcf43e5bd8e0204580fc6899a086b00 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/Delimiter.cs b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/Delimiter.cs deleted file mode 100644 index b32dcc3..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/Delimiter.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace yutokun -{ - public enum Delimiter - { - Auto, - Comma, - Tab - } -} diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/Delimiter.cs.meta b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/Delimiter.cs.meta deleted file mode 100644 index 8f7cf00..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/Delimiter.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: e0e2bb27fdbb714468ca87aeaf607331 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/DelimiterExtensions.cs b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/DelimiterExtensions.cs deleted file mode 100644 index a38371d..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/DelimiterExtensions.cs +++ /dev/null @@ -1,24 +0,0 @@ -using System; -using System.ComponentModel; - -namespace yutokun -{ - public static class DelimiterExtensions - { - public static char ToChar(this Delimiter delimiter) - { - // C# 7.3: Unity 2018.2 - 2020.1 Compatible - switch (delimiter) - { - case Delimiter.Auto: - throw new InvalidEnumArgumentException("Could not return char of Delimiter.Auto."); - case Delimiter.Comma: - return ','; - case Delimiter.Tab: - return '\t'; - default: - throw new ArgumentOutOfRangeException(nameof(delimiter), delimiter, null); - } - } - } -} diff --git a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/DelimiterExtensions.cs.meta b/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/DelimiterExtensions.cs.meta deleted file mode 100644 index d98b86d..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/CSV Parser/src/DelimiterExtensions.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 7b9ab5b183dd311459e9893fe735bea6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/LICENSE b/marching/Assets/ThirdParty/CSV-Parser/LICENSE deleted file mode 100644 index 8a9b3dc..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/LICENSE +++ /dev/null @@ -1,35 +0,0 @@ -For unique parts of the repository - -This is free and unencumbered software released into the public domain. - -Anyone is free to copy, modify, publish, use, compile, sell, or -distribute this software, either in source code form or as a compiled -binary, for any purpose, commercial or non-commercial, and by any -means. - -In jurisdictions that recognize copyright laws, the author or authors -of this software dedicate any and all copyright interest in the -software to the public domain. We make this dedication for the benefit -of the public at large and to the detriment of our heirs and -successors. We intend this dedication to be an overt act of -relinquishment in perpetuity of all present and future rights to this -software under copyright law. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -For more information, please refer to <http://unlicense.org> - --------------------------------------------------------------------------------------------- - -For .NET Runtimes (included in the .unitypackage for old Unity) - -The MIT License -Copyright (c) .NET Foundation and Contributors - -https://github.com/dotnet/runtime/blob/main/LICENSE.TXT
\ No newline at end of file diff --git a/marching/Assets/ThirdParty/CSV-Parser/LICENSE.meta b/marching/Assets/ThirdParty/CSV-Parser/LICENSE.meta deleted file mode 100644 index 1df5cd4..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/LICENSE.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: e44599b63f0a77d408c64fcf15e388e1 -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/README.md b/marching/Assets/ThirdParty/CSV-Parser/README.md deleted file mode 100644 index c87aaef..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/README.md +++ /dev/null @@ -1,102 +0,0 @@ -# CSV Parser for C# - -[](https://github.com/yutokun/CSV-Parser/actions/workflows/test.yml) - -CSV Parser with CC0 License. - -Best for: - -- [Unity](https://unity3d.com/) projects that requires cross-platform CSV parser. (maybe works on any platform supported by Unity) -- Commercial products that you could not display the license. - -## Prerequisites - -| Environment | Prerequisites | -| ----------------------- | ------------------------------------------------------------------------- | -| Unity 2019.2 or later | None | -| Unity 2019.1 or earlier | .NET 4.x Equivalent | -| .NET Project | [System.Memory](https://www.nuget.org/packages/System.Memory/) from NuGet | - -## Download - -Download zip or unitypackage from [**Releases**](https://github.com/yutokun/CSV-Parser/releases). - -## Usage - -### Methods - -This returns CSV data as `List<List<string>>`. - -```c# -CSVParser.LoadFromString(string data) -``` - -or - -```c# -CSVParser.LoadFromPath(string path, Encoding encoding = null) -``` - -### Examples - -```c# -var sheet = CSVParser.LoadFromString(csvString); - -var styled = new StringBuilder(); -foreach (var row in sheet) -{ - styled.Append("| "); - - foreach (var cell in row) - { - styled.Append(cell); - styled.Append(" | "); - } - - styled.AppendLine(); -} - -Debug.Log(styled.ToString()); // Unity -Console.WriteLine(styled.ToString()); // C# -``` - -## Specs - -Compliant with [RFC 4180](http://www.ietf.org/rfc/rfc4180.txt). - -- Correctly parse new lines, commas, quotation marks inside cell. -- Escaped double quotes. -- Some encoding types. (default UTF-8) - -## Beta - -- Tab delimiter support - -- Async loading - -## Development - -The repository contains multiple types of newline code. Run `git config core.autocrlf false` in your local repository. - -## Why this repo has multiple Unity Examples? - -One of the reasons is to check operation in different Unity versions. Another one is to build .unitypackage with CI. - -Unity changes a lot between their Tech Streams. It leads different requisites / dependency to the parser. Affected changes below. - -| Versions | Difference | -| ----------------- | ---------------------------------------------- | -| 2019.1 and 2019.2 | Has Scripting Runtime Version selector or not. | -| 2021.1 and 2021.2 | Requires additional DLLs or not. | - -## License - -### Unique part of the repository - -[CC0](https://creativecommons.org/publicdomain/zero/1.0/) or [Public Domain](LICENSE) - -### .NET Runtimes (included in the .unitypackage for old Unity) - -[The MIT License](https://github.com/dotnet/runtime/blob/main/LICENSE.TXT) - -Copyright (c) .NET Foundation and Contributors diff --git a/marching/Assets/ThirdParty/CSV-Parser/README.md.meta b/marching/Assets/ThirdParty/CSV-Parser/README.md.meta deleted file mode 100644 index 97d3fa3..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/README.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 369bbbb3341b6ec4583dce723dc805f4 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/RELEASE.md b/marching/Assets/ThirdParty/CSV-Parser/RELEASE.md deleted file mode 100644 index 99ec2e9..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/RELEASE.md +++ /dev/null @@ -1,14 +0,0 @@ -# Change - -- Updated project to .NET 6. It because deprecation of .NET 5 by GitHub Actions. - - CSV Parser itself has same prerequisites as before. - -# Fix - -- Fixed a bug that last cell will be ignored when single cell rows not ending with CRLF. (Thank you so much @gmichaudAniki !) - -# Misc. Changes - -- Fixed some errors in README. - -- Updated CI to compliant with Node.js 16.
\ No newline at end of file diff --git a/marching/Assets/ThirdParty/CSV-Parser/RELEASE.md.meta b/marching/Assets/ThirdParty/CSV-Parser/RELEASE.md.meta deleted file mode 100644 index cc47df1..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/RELEASE.md.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: baea5598d0dce0441a1b60a3364f3cc7 -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/Tests.meta b/marching/Assets/ThirdParty/CSV-Parser/Tests.meta deleted file mode 100644 index c219211..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/Tests.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 229bb474319e02440b7fde15814d354e -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/Unity Examples.meta b/marching/Assets/ThirdParty/CSV-Parser/Unity Examples.meta deleted file mode 100644 index eb2f7be..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/Unity Examples.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 6e45f679bb3e6f54a8ae2adea95ddc1e -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/marching/Assets/ThirdParty/CSV-Parser/global.json b/marching/Assets/ThirdParty/CSV-Parser/global.json deleted file mode 100644 index 1bcf6c0..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/global.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "sdk": { - "version": "6.0.0", - "rollForward": "latestMinor", - "allowPrerelease": false - } -}
\ No newline at end of file diff --git a/marching/Assets/ThirdParty/CSV-Parser/global.json.meta b/marching/Assets/ThirdParty/CSV-Parser/global.json.meta deleted file mode 100644 index b2d9917..0000000 --- a/marching/Assets/ThirdParty/CSV-Parser/global.json.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: d4150b58aa163dc4d8a2aa3241ae51ea -TextScriptImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: |