Mythosia 1.1.2
See the version list below for details.
dotnet add package Mythosia --version 1.1.2
NuGet\Install-Package Mythosia -Version 1.1.2
<PackageReference Include="Mythosia" Version="1.1.2" />
<PackageVersion Include="Mythosia" Version="1.1.2" />
<PackageReference Include="Mythosia" />
paket add Mythosia --version 1.1.2
#r "nuget: Mythosia, 1.1.2"
#:package Mythosia@1.1.2
#addin nuget:?package=Mythosia&version=1.1.2
#tool nuget:?package=Mythosia&version=1.1.2
Mythosia
This project supports custom functions that are not directly provided by .NET as extension methods so that they can be conveniently used within the project. <br/> The extensions supported by this project include the following. <br/>
String
using Mythosia;
var data = "12345".ToDefaultArray(); // Equal with Encoding.Default.GetBytes("12345");
var data = "12345".ToASCIIArray(); // Equal with Encoding.ASCII.GetBytes("12345");
var data = "12345".ToUTF8Array(); // Equal with Encoding.ASCII.GetBytes("12345");
var data = "12345".ToUTF32Array(); // Equal with Encoding.ASCII.GetBytes("12345");
var data = "=".Repeat(10); // data is "=========="
Numeric (sbyte, byte, short, ushort, int, uint, float, double)
using Mythosia;
var result = 56.IsInRange(0, 100); // result is true
var result = 56.IsInRange(0, 30); // result is false
var data = 56000000.ToSIPrefix(); // data is "56 M"
var data = 423.42031.HostToNetworkEndian(); // change endian (host to big)
var data = 234.52.ToByteArray(); // Equal with BitConverter.GetBytes(234.52);
Enumerable (included ConcurrentBag)
using Mythosia;
new List<byte> test = new List<byte>(){0xff, 0xab, 0x01, 0x00, 0xee};
var result = test.ToUnPrefixedHexString(); // result is "ff ab 01 00 ee"
var result = test.ToPrefixedHexString(); // result is "0xffab0100ee"
var result = test.ToEncodedString(Encoding.GetEncoding("ISO-8859-1")); // convert string as "ISO-8859-1" format
var result = test.ToASCIIString(); // equal with Encoding.ASCII.GetString(test.ToArray(), 0, test.Count());
var result = test.IndexOf(new List(){ 0xab, 0x01 }); // return the index that subsequence is finded.
test.AddExceptNull(item); // add item if item is not null
new List<byte> newItems = new List<bye>(){ 0x01, 0x02 };
test.AddRangeParallel(newItems); // add items as parallel
Delegate
using Mythosia;
// If you have a function that success or fails according to condition as below.
bool WireConnect()
{
// Check whether the wire is connected
// If connected to wire return true else false.
}
// Here you may want to call the function to repeat to specified timeout.
// Then you can solute just by calling the function "Retry" as below.
void Test()
{
var func = WireConnect; // you need c# 10.0
bool result = func.Retry(30000); // Call WireConnect function to repeat while a maximum of 30,000 ms (the 30s) or until success
if(result) Console.WriteLine("Success");
else Console.WriteLine("Failed");
}
Stream
using Mythosia;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public class TestMarshalClass
{
public int a;
public int b;
}
TestMarshalClass test = new();
var serializeData = test.SerializeUsingMarshal(); // Serialize
test.DeSerializeUsingMarshal(serializeData); // Deserialize to test
Enum
using Mythosia;
public enum CarBrand
{
[Description("Mercedes")] Benz = 0,
[Description("Bayerische Motoren Werke AG")] BMW,
}
CarBrand test = CarBrand.Benz;
var value = test.ToDescription(); // value is "Mercedes"
int carBrand = 1;
var enum = carBrand.ToEnum<CarBrand>(); // enum is CarBrand.BMW
var enum = "Mercedes".GetEnumFromDescription<CarBrand>(); // enum is CarBrand.Benz
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- No dependencies.
NuGet packages (4)
Showing the top 4 NuGet packages that depend on Mythosia:
| Package | Downloads |
|---|---|
|
Mythosia.AI.Abstractions
Use shared AI contracts in middleware, RAG integrations and custom providers without depending on provider SDKs. Defines IAIService, optional Run/request-feature/image interfaces, messages, streaming events, tools, typed image options, AIRunResult, processing-speed observations and immutable model capabilities. Includes identifiers for GPT-6.1 Sol, GPT-6 Sol/Luna, Claude Sonnet 5.5 and Opus 5.5, Grok 4.7 and DeepSeek V4 Pro, plus Perplexity Agent API contracts. Provider execution is supplied by Mythosia.AI 8.2.0. What's New in v4.2.0: additive GPT-6.1 Sol and Claude Sonnet 5.5 model identifiers, plus ClaudeThinkingMode for adaptive and between-tools thinking. Existing public contracts remain compatible. Depends only on the lightweight Mythosia base package. |
|
|
Mythosia.Integrity
CRC and 8-bit checksum calculation, frame encoding, error detection and payload decoding for byte sequences through a common ErrorDetection API. Supports CRC8 Classic/Maxim, CRC16 Classic/Modbus/CCITT XModem/DNP/CCITT-FALSE/X25, CRC32 Classic, CRC32C (Castagnoli), CRC64/NVME, and XOR/NMEA, modulo-256 and two's-complement checksums. Includes incremental accumulators and synchronous/asynchronous stream CRC calculation with a reusable 64 KiB buffer. Targets .NET Standard 2.1. See the package README for examples and byte-order behavior. |
|
|
Mythosia.Azure.Storage.Blobs
**New Features**: This update introduces an extension method to automatically convert strings into valid Azure Blob Storage container names. Azure Blob Storage imposes strict naming rules requiring lowercase letters, numbers, and hyphens, with specific constraints on hyphen placement and name length. This new feature ensures that container names comply with these rules by transforming arbitrary input strings into valid container names seamlessly. **Key Benefits**: - Converts camelCase or PascalCase strings to lowercase with hyphens automatically. - Replaces disallowed characters with hyphens, ensuring valid naming conventions. - Handles name length constraints (minimum 3 characters, maximum 63 characters). - Simplifies compliance with Azure Blob Storage naming standards, reducing errors and improving consistency. **Usage Example**: ```csharp using Mythosia.Azure.Storage.Blobs; // Convert a string to a valid container name string validName = "PhonoMaster@123".ToBlobContainerName(); // Output: "phono-master-123" ``` |
|
|
Mythosia.Security.Cryptography
support symmetric algorithm 1. AES128 2. AES192 3. AES256 4. 3DES 5. DES 6. SEED support HashCode for IV (Integrity Verification) 1. SHA1 2. SHA256 3. SHA384 4. SHA512 5. MD2 6. MD4 7. MD5 refer to https://github.com/AJ-comp/Mythosia/tree/master/Mythosia.Security.Cryptography for detail. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.4.0 | 9,192 | 11/9/2024 |
| 1.3.0 | 266 | 10/25/2024 |
| 1.2.4 | 285 | 10/23/2024 |
| 1.2.3 | 591 | 6/17/2024 |
| 1.2.2 | 1,216 | 10/16/2023 |
| 1.2.1 | 1,270 | 8/20/2023 |
| 1.2.0 | 4,052 | 8/9/2023 |
| 1.1.5 | 1,331 | 7/17/2023 |
| 1.1.4 | 1,315 | 7/3/2023 |
| 1.1.3 | 1,373 | 7/3/2023 |
| 1.1.2 | 1,224 | 6/28/2023 |
| 1.1.1 | 1,608 | 6/25/2023 |
| 1.1.0 | 1,288 | 6/23/2023 |
| 1.0.3 | 1,309 | 6/23/2023 |
| 1.0.2 | 1,274 | 6/21/2023 |
| 1.0.1 | 1,532 | 6/19/2023 |
| 1.0.0 | 1,409 | 6/18/2023 |