Vrmac.Utils 1.0.0

dotnet add package Vrmac.Utils --version 1.0.0
                    
NuGet\Install-Package Vrmac.Utils -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Vrmac.Utils" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Vrmac.Utils" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Vrmac.Utils" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Vrmac.Utils --version 1.0.0
                    
#r "nuget: Vrmac.Utils, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Vrmac.Utils@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Vrmac.Utils&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Vrmac.Utils&version=1.0.0
                    
Install as a Cake Tool

Vrmac.Utils

This library implements a few utility classes consumed by other Vrmac.* packages.

  • Spans static class contains functions to concatenate spans of bytes into newly allocated arrays.
  • MultiByte static class implements variable-length integer codec specified in the section 4 “Variable-Size Integer” of RFC 8794. The class only supports integers in [ 0 .. 2^31 - 1 ] interval.
  • LineParser static class implements a function to split ASCII or UTF-8 text in memory into lines without copying the data. It supports Windows and Unix line ending conventions, also the mix of them.
  • RentedArray structure is a RAII wrapper around array of bytes rented from the pool, along with HTTP status code. The array is optional; can also be constructed with just the status.
  • Utf8StreamExtensions static class contains extension methods to write bytes, printed integers, and UTC timestamp strings into UTF-8 stream of bytes.
  • HtmlEncoder static class implements functions similar to WebUtility.HtmlEncode producing UTF-8 output instead of UTF-16.
  • CachedMemStream static class implements a pool of cached reusable MemoryStream objects, at most one per thread. Do not retain the streams obtained from CachedMemStream.threadLocal() function across await-s, things will probably fail catastrophically because two threads will end up sharing one stream.
  • CompressedID static class implements functions to format and parse unsigned numbers for/from HTTP query string values. Designed for primary keys like this:
oid bigint UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'Primary key, int64'

Note these numbers, as well as their encoded representation, are easily predictable, and the class does nothing to address that. When security matters, do something reasonable in the consuming code.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net10.0

    • No dependencies.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on Vrmac.Utils:

Package Downloads
Vrmac.Html

Runtime support for web pages served from HTML templates

Vrmac.Security

Cryptography-related functions built on top of the standard library

Vrmac.Uploads

Kestrel-based server of the resumable file upload protocol

Vrmac.Markdown

Renders markdown into HTML

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 85 9/30/2026